【PHP】写一个函数,array_remove(),要求最简洁的清除 数组中值为$v的项?

如题所述

方法1:

function array_remove($array,$v){        // $array为操作的数组,$v为要删除的值

foreach($array as $key=>$value){    

if($value == $v){       //删除值为$v的项        

unset($array[$key]);    //unset()函数做删除操作        

}    

}

return $array;

}

注意:此方法删除指定值之后,其他项的键与值都与原来的保持一样

方法2:

function array_remove($array,$v){       // $array为操作的数组,$v为要删除的值

$array = array_flip($array);   //数组反转函数,将数组原来的键变为值,值变为键,

unset($array["$v"]);

$array = array_flip($array);   //再次反转

return $array;

}

注意:此方法会合并相同值的项

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-02-03
方法1:
function array_remove($array,$v){ // $array为操作的数组,$v为要删除的值
foreach($array as $key=>$value){
if($value == $v){ //删除值为$v的项
unset($array[$key]); //unset()函数做删除操作
}
}
return $array;
}
注意:此方法删除指定值之后,其他项的键与值都与原来的保持一样

方法2:

function array_remove($array,$v){ // $array为操作的数组,$v为要删除的值
$array = array_flip($array); //数组反转函数,将数组原来的键变为值,值变为键,

unset($array["$v"]);
$array = array_flip($array); //再次反转
return $array;
}
注意:此方法会合并相同值的项
方法3:
function array_remove($array,$v){ // $array为操作的数组,$v为要删除的值
$key = array_search($v,$array); //array_search()在数组中查找一个键值。如果找到了该
值,匹配元素的键名会被返回。如果没找到,则返回 false。
array_splice($array, $key,1); //array_splice() 函数与 array_slice() 函数类似,选择数组中的一系列元素,但不返回,而是删除它们并用其它值代替。
return $array;
}
注意:此方法不会删除相同的项,具体问题具体分析

不懂的函数请查阅PHP手册,共同进步,仅供参考。

相关了解……

你可能感兴趣的内容

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