卓越飞翔博客卓越飞翔博客

卓越飞翔 - 您值得收藏的技术分享站
技术文章11179本站已运行3223

php数组怎么删除某个元素

php数组删除某个元素的六种方法,分别是:1、foreach和unset()函数删除数组中特定值;2、array_flip()函数和unset()函数删除数组中特定值;3、array_search()和unset()函数删除数组中特定值;4、array_splice()函数与unset()函数起到相同作用;5、array_unique()让特定值在数组中全删除;6、只删除特定值

php数组怎么删除某个元素

本教程操作环境:windows10系统、php8.1.3版本、DELL G3电脑。

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

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

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

foreach($array as $k=>$v){
if($v == 'day'){
unset($array[$k]):
}
}

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

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

$arr = array_flip($arr);
unset($arr['world']);
$arr = array_flip($arr);
print_r($arr);

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

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

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

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

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

if(($key = array_search('day',$arr))){
array_splice($arr, $key,1);
}

array_splice()有四个参数。

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

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

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

六、只删除特定值对应的键值,不动其他值

五中导致删除特定值的同时,也将其他无关的值合并了,那么不要动其他值怎么办?重复执行上面一~四的操作即可,获取数组长度,用一个for循环即可,当然这是最笨的办法~~

获取数组长度的函数是count($arr)

for(count($arr))if($key = 
array_search('day',$arr))array_splice($arr,$key,1);
卓越飞翔博客
上一篇: php中怎样求数组偶数项的和
下一篇: 通过 PHP 实现自动爬虫爬取,以及分析抓取的数据
留言与评论(共有 0 条评论)
   
验证码:
隐藏边栏