我们可以使用array_unique()
从php中的单个多维数组中删除重复条目。是否可以使用多维数组?它不适合我!
这是数组的样子
Array (
[0] => Array ( [0] => 1001 [1] => john [2] => example )
[1] => Array ( [0] => 1002 [1] => test [2] => dreamz )
[2] => Array ( [0] => 1001 [1] => john [2] => example )
[3] => Array ( [0] => 1001 [1] => example [2] => john )
[4] => Array ( [0] => 1001 [1] => john [2] => example )
)
任何人都可以帮助我......
答案 0 :(得分:39)
array_unique页面上的用户评论确实对此有所了解。您很可能会在这些评论中找到一些隐藏的宝石 - 这是一个非常方便的文档。
通过快速浏览器显示以下内容以从多维数组中删除重复项:
<?php
function super_unique($array)
{
$result = array_map("unserialize", array_unique(array_map("serialize", $array)));
foreach ($result as $key => $value)
{
if ( is_array($value) )
{
$result[$key] = super_unique($value);
}
}
return $result;
}
?>
答案 1 :(得分:3)
您可以将子数组(通过serialize()
)序列化为一个新数组,然后在其上运行array_unique()
,然后对结果数组进行反序列化。