如何将函数插入PHP数组?

时间:2014-08-26 15:26:49

标签: php arrays function

请帮我解决这个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;
}

非常感谢!

1 个答案:

答案 0 :(得分:0)

您的函数返回一个数组,并将其分配给另一个数组中的变量。

// 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 var。像那样:

$fruits = $my_custom_func();

甚至

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