PHP unset() 函数
PHP删除数组中的元素须要用到函数 unset()
unset():用于销毁指定的变量。
语法:
unset (var)
var:要销毁的变量
PHP删除数组中指定值的元素的方法方法1:
$array = array('a','b','c','d');foreach ($array as $key => $a) { if($a == 'b'){ unset($array[$key]); }}var_dump($array);
打印结果:
array(3) { [0]=> string(1) \"大众a\公众 [2]=> string(1) \"大众c\"大众 [3]=> string(1) \公众d\公众}
方法2:
编写自定义函数,并进行调用
function delarrayval($arr,$v){ //要判断传入的数据类型是否为数组 if(!is_array($arr)){ return false; } if(!$v){ return $arr; } foreach ($arr as $key => $a) { if($a == $v){ unset($arr[$key]); } } return $arr;}
调用函数:
$array = array( 'aa' => 'a', 'bb' => 'b', 'cc' => 'c', 'dd' => 'd');$arr2 = delarrayval($array,'b');//打印结果var_dump($arr2);
打印结果:
array(3) { [\"大众aa\"大众]=> string(1) \"大众a\"大众 [\"大众cc\"大众]=> string(1) \"大众c\公众 [\"大众dd\公众]=> string(1) \公众d\公众}
把稳:打印的结果中,含有值“b”的数组元素已被删除掉。
方法3:
利用 array_keys() 函数查找数组的键名,并进行删除
自定义函数代码
function delarrayval2($arr,$v){ $keyarr = array_keys($arr, $v); if(count($keyarr)){ foreach ($keyarr as $key) { unset($arr[$key]); } } return $arr;}
调用函数:
$array = array('a','b','c','d');var_dump(delarrayval2($array,'b'));打印结果:array(3) { [0]=> string(1) \"大众a\"大众 [2]=> string(1) \"大众c\"大众 [3]=> string(1) \"大众d\公众}