请帮我解决这个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;
}
非常感谢!
答案 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()