array_unique 在对数组进行排序时输出 null



我有这个数组(从JSON解码,输出print_r):

stdClass Object
(
    [data] => Array
        (
            [0] => stdClass Object
                (
                    [item] => te
                    [date] => 13.10
                )
            [1] => stdClass Object
                (
                    [item] => te
                    [date] => 13.10
                )
            [2] => stdClass Object
                (
                    [item] => tr
                    [date] => 13.10
                )
        )
)

但是现在我必须删除所有重复项。如果我尝试$result = array_unique($array, SORT_REGULAR); $result为空。

有人能发现我的错误吗?

这是一个 stdClass 对象,而不是数组。使用函数 json_decode 解码时,需要传递参数"true"才能获得数组:

$array = json_decode($json, true);

编辑:正如人们在评论中注意到的那样,实际的数组存在于$array['data']中,因此array_unique必须应用于$array['data']而不是$array

最新更新