带有数组合并和数组差异的PHP数组

带有数组合并和数组差异的PHP数组,php,arrays,Php,Arrays,我有以下代码 $usersarray =array(); foreach($users as $oneitem){ $usersarray[]=$oneitem->user_id; } print_r($usersarray); $resultarray =array(); foreach($result as $oneitem){ $resultarray[]=$oneitem->friend_user_id; } $results = implode(",

我有以下代码

$usersarray =array();
foreach($users as $oneitem){
    $usersarray[]=$oneitem->user_id;
}
print_r($usersarray); 

$resultarray =array();
foreach($result as $oneitem){
    $resultarray[]=$oneitem->friend_user_id;
} 
$results = implode(", ",$result);
print_r($resultarray);
echo $results;


$excluded_user = array_diff($usersarray , $resultarray);
$excluded_user =implode(", ",$excluded_user); //comma separated ids of     users whom you want to exclude
echo $excluded_user;
这将为$usersarray输出以下内容:

Array ( [0] => 1 [1] => 1 [2] => 1 [3] => 1 [4] => 1 [5] => 42 [6] => 43 [7] => 44 [8] => 45 [9] => 46 [10] => 47 [11] => 48 [12] => 49 [13] => 50 [14] => 51 [15] => 52 [16] => 53 [17] => 54 [18] => 55 [19] => 56 [20] => 57 [21] => 58 [22] => 59 [23] => 60 [24] => 61 [25] => 62 [26] => 63 [27] => 64 [28] => 65 [29] => 66 [30] => 86 [31] => 103 [32] => 121 [33] => 123 [34] => 124 [35] => 125 [36] => 143 [37] => 147 [38] => 149 [39] => 150 )
但花$resultarray我就可以得到:

Array ( [0] => [1] => [2] => [3] => [4] => [5] => [6] => [7] => [8] => [9] => [10] => )
然而,当我回显$results时,我得到了:64、56、53、47、44、57、43、50、1、47、59,这是正确的ID列表

它似乎在$excluded\u user=array\u diff($usersarray,$resultarray)处崩溃;阶段我怀疑这是因为$resultarray的格式导致数组_diff()无法正常工作

有人能解释一下$resultarray为什么会得到这样的输出吗?或者如果这甚至是代码崩溃的地方


提前感谢您的建议,非常感谢。

您可以尝试
foreach($result as$oneitem){echo$oneitem->friend\u user\u id}
并查看是否有任何数据在回响吗?@aharen没有任何内容得到回响您的代码中没有
$resultsarry
。有
$resultarray
$results
。你能显示这个代码片段的全部输出吗?@IanButler这就是问题所在,
$oneitem->friend\u user\u id
没有返回你期望的数据,因为
$result
数组缺少关键的“friend\u user\u id”。尝试
echo var\u dump($result)在循环之前,您可以共享输出吗please@aharen谢谢你的建议-帮助我找到答案。我需要
$excluded\u user=array\u diff($usersarray,$result)我将错误的数组传递到数组_diff()