Array_unique在array_merge()上应用时出现php错误

时间:2012-08-26 21:45:14

标签: php

我有两个合并使用的数组:

$ query = array_merge($ query1,$ query2);

合并后我想应用数组唯一:

$ query = array_unique($ query);

出于某种原因,它给了我一个php错误,一个页面黑色。

我怀疑这是因为数组的结构需要合并。

vardump说明了query1和query 2的结构:

array(73) { 
    [0]=> object(stdClass)#32 (6) { 
        ["pic0"]=> string(78) "the picture1 link" 
        ["bio"]=> string(22)  "the bio1" 
    } 
    [1]=> object(stdClass)#96 (6) { 
        ["pic0"]=> string(70) "the picture2 link" 
        ["bio"]=> string(225) "the bio2" 
    } 
 }

1 个答案:

答案 0 :(得分:1)

array_unique通过将元素作为字符串进行比较来工作。对象通常无法转换为字符串,因此您收到错误。

尝试使用数组而不是stdClass es,并确保设置SORT_REGULAR标记。