有没有一个PHP函数可以从数组中删除某些数组元素?
例如,我有一个具有值的数组(A
)和另一个需要从中删除值的数组(B
)。
我想从数组B
中删除数组A
中的值
发布于 2009-08-17 14:13:44
这取决于你所说的“移除”是什么意思。
您可以使用unset()函数从数组中删除键,但这不会对其重新编制索引。举个例子,如果你有:
$a = array(1 => 'one', 2 => 'two', 3 => 'three');
然后你调用
unset($a[2]);
你最终会得到类似这样的结果
(1 => 'one', 3 => 'three');
如果需要对数组进行顺序索引,可以将未设置的数组传递给array_values(),它将返回一个具有顺序索引键的新数组。
回到最初的场景,正如其他人所观察到的那样,array_diff将为您做这项工作,但请注意,它不会执行索引检查。如果需要,请改用array_diff_assoc。
发布于 2009-08-17 14:13:27
array_diff函数将为您完成此操作。
发布于 2009-08-17 14:13:16
$array1 = array("a" => "green", "red", "blue", "red");
$array2 = array("b" => "green", "yellow", "red");
$result = array_diff($array1, $array2);
print_r($result);
https://stackoverflow.com/questions/1288148
复制相似问题