array_unique在比较值以查找唯一值之前正在使用字符串转换:
注意 :当且仅当时,两个元素才被视为相等
(string) $elem1 === (string)$elem2。换句话说:当字符串表示相同时。将使用第一个元素。
但是数组将始终转换为
Array:
var_dump("Array" === (string) array());您可以通过在第二个参数中指定 SORT_REGULAR 模式来解决此问题
array_unique:
$unique = array_unique($a, SORT_REGULAR);
或者,如果不工作,通过序列化前的阵列和反序列化调用后,
array_unique找到了独特的价值:
$unique = array_map('unserialize', array_unique(array_map('serialize', $a)));


