如何将函数插入PHP数组


How to insert function into PHP array?

请帮助我解决这个PHP数组问题…

我有一个函数输出如下值:1、2、5、15、21等…

当我使用像这样的简单数组时:

<?php
$fruits=array("Apples","Oranges","Bananas");
echo "I like " . $fruits[0] . ", " . $fruits[1] . " and " . $fruits[2] . ".";
?>

给出:"我喜欢苹果,橙子和香蕉。"

我把我的函数像这样放在里面:

<?php
$my_func = my_function_output();
$fruits=array( $my_func );
echo "I like " . $fruits[0] . ", " . $fruits[1] . " and " . $fruits[2] . ".";
?>

$my_func给出,比如说1,5,7——那么对于$fruits[0],我得到的是"1,5,7",而不是第一个"1",对于$fruits[1]和$fruits[2],我得到的是什么也没有,而不是分别得到5和7…

是否有一种方法可以使每个数组位置仅为函数中的一个值?-如果需要,我可以修改函数的输出为不同的格式。

函数获取WordPress用户id;

function my_function_output($id)
{
    global $wpdb;
    $count = 0;
    $site_user = get_user_name_by_id($id);
    $tablename = $wpdb->prefix . 'site_users';
    $user_list = array();
    while($site_user) {
        $site_user = $wpdb->get_var("SELECT user FROM $tablename WHERE site_user = '".$site_user."'");
        if($site_user) {
            $user_list[] = $site_user;
        }
    }
    return $user_list;
}

非常感谢!

你的函数返回一个数组,你将它赋值给另一个数组中的变量。

// here $my_func is an array, the return of $my_custom_func
$my_func = $my_custom_func();
// now my fruits is an array with just ONE element which is another array with your ids.
$fruits = array($my_func);

尝试将函数返回的值直接赋值给$fruits变量,如下:

$fruits = $my_custom_func();

或者

$my_func = $my_custom_func();
$fruits = $my_func; // without array()