我需要能够从多维数组中删除指定数量的数组,其中一个值在所有数组中都相同。我有的示例数组:
array(
array(1,'this'),
array(2,'that'),
array(1,'andthat')
)
因此,例如,我需要删除两个数组作为第一个值的数组。
我该怎么做?
答案 0 :(得分:4)
您可以使用array_filter()
来执行此操作。
$newArray = array_filter($arr, function($arr) { return $arr[0] != 1; });
答案 1 :(得分:1)
可能这更容易理解:
foreach($a as $i => $item)
if($item[0]==1)
unset($a[$i]);
其中$a
是数组,$item
是子数组,$i
是数组索引
答案 2 :(得分:0)
我测试了这个以防止重复数组,这可能对你有所帮助......
<?php
function func($array)
{
$result = array_map("unserialize", array_unique(array_map("serialize", $array)));
foreach ($result as $key => $value)
{
if ( is_array($value) )
{
$result[$key] = func($value);
}
}
return $result;
}
?>