php编程--如何删除数组中元素为某一值的所有项(这些值可能重复)

如何删除数组中元素为某一值的所有项(这些值可能重复)

例如,如何把下面数组中值为"苹果"的所有项删除.

$array1 = array(1 => "苹果", 2 => "菠萝", 4 => "苹果",3 => "香蕉", 4 => "芭乐",5 => "苹果",6 => "苹果");

我想得到的结果:
$array1 = array(1 => "菠萝", 2 => "香蕉", 3 => "芭乐");

第1个回答  推荐于2016-08-30
我感觉苹果应该保留!那就直接
array_flip(array_flip($array1));
如果苹果不保留,那就
$search_keys = array_keys($array1, "苹果");

foreach($search_keys as $key) {
unset($array1[$key]);
}

print_r($array1);

unset有一个不好的地方那就是他不能重新排序他的索引,那就重新写一下,设定索引吧!

再来高人写出好的方法。。。。 等待中!!!!!本回答被提问者采纳
第2个回答  2010-03-09
两种方法,一种是循环,像楼上说的;另种方法:

$array1 = array(1 => "苹果", 2 => "菠萝", 4 => "苹果",3 => "香蕉", 4 => "芭乐", 5 => "苹果",6 => "苹果");

$array2 = array(1=>"苹果");

$arr = array_diff($array1, $array2);

print_r($arr);

结果:Array ( [2] => 菠萝 [4] => 芭乐 [3] => 香蕉 )

参考资料:

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网