首页 >后端开发 >PHP问题 >php怎么移除数组中的某个值

php怎么移除数组中的某个值

藏色散人
藏色散人原创
2021-02-28 09:17:152525浏览

移除方法:1、用foreach和unset函数来删除,语法“foreach($arr as $k=>$v){if($v=='指定值'){unset($array[$k]):}}”;2、用array_flip和unset函数删除;3、用array_search和unset函数删除;4、用array_splice()和unset()函数删除;5、用array_unique()删除。

php怎么移除数组中的某个值

本文操作环境:windows7系统、PHP8版,DELL G3电脑

php删除数组中指定值的元素的几种方法

在一些特殊情况下,你需要删除数组中的特定值,而且要全部删除,其实方法有很多种,我们通过本文来进行讨论。

一、利用foreach和unset()函数删除数组中的特定元素

<?php
header("Content-type:text/html;charset=utf-8");
$arr=[1,2,3,4,5,6,7,8];
var_dump($arr);
foreach($arr as $k=>$v){
	if($v == &#39;3&#39;){
	unset($arr[$k]);
	}
}
var_dump($arr);
?>

1.png

unset()函数即删除指定的数组值。

二、利用array_flip()函数和unset()函数删除数组中的特定值

$arr = array_flip($arr);
unset($arr[&#39;world&#39;]);
$arr = array_flip($arr);
print_r($arr);

array_flip()是一个反转函数,将数组原来的键名变为键值,把键值变为键名,这样上面的操作就很容易理解了。

三、利用array_search()和unset()函数删除数组中的特定值

if(($key = array_search(&#39;day&#39;,$arr))){
unset($arr[$key]);
}

array_search() 函数与 in_array() 一样,在数组中查找一个键值。如果找到了该值,匹配元素的键名会被返回。如果没找到,则返回 false。

四、array_splice()函数可以与unset()函数起到相同作用

if(($key = array_search(&#39;day&#39;,$arr))){
array_splice($arr, $key,1);
}

array_splice()有四个参数,用法请看这里。

五、array_unique()让这个特定值在数组中一个不留

注意:上面的所有操作只是删除了数组中第一个和你给定的值相同的元素,之后的元素即使和你给定的值相等,却没有被删除!

在进行上面所有的代码操作之前,先进行array_unique($array)的操作,将数组中的重复值进行合并删除,再进行上面的删除,让数组中的重复值一个不留。

【推荐学习:《PHP视频教程》】

以上是php怎么移除数组中的某个值的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn