这篇文章主要介绍“php怎么去除任意元素”,在日常操作中,相信很多人在php怎么去除任意元素问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”php怎么去除任意元素”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
大部分时候,需要删除的元素是不固定的,不一定是数组开头或结尾,也不一定只删除一个,这也就无法使用array_shift()和array_pop()函数了。那么要如何才能去删除数组中的任意元素呢?今天我们来了解了解。
我们来看下面一个小例子。
<?php header("Content-type:text/html;charset=utf-8"); $arr=array(10,12,20,25,24); echo "原数组:"; var_dump($arr); echo "删除后的数组:" ; array_splice($arr,2); var_dump($arr); ?>
输出结果为:
可以看出,我们使用array_splice($arr,2)
从$arr数组的第3个元素开始删除元素,共删除了3个元素(将从第3个元素开始的所有元素删除了)。array_splice($arr,$start)
会删除从$start位置开始的所有元素删除。
$start参数有三种取值情况:
为正数,那么从$start位置开始,往后删除;
为0,那么从第一个元素开始,往后删除;
为负数,则从距离 $arr 末端 -start 的位置开始,从后往前删除。例如 -2 意味着从数组的倒数第二个元素开始。
<?php header("Content-type:text/html;charset=utf-8"); $arr=array(10,12,20,25,24); echo "原数组:"; var_dump($arr); echo "删除后的数组:" ; array_splice($arr,-2); var_dump($arr); ?>
输出结果为:
array_splice()函数是强大的,可以删除多个元素,也可只删除一个元素,那就需要给该函数指定一个$length
参数(第三个参数),该参数用来规定删除的元素个数。
<?php header("Content-type:text/html;charset=utf-8"); $arr=array(10,12,20,25,24); echo "原数组:"; var_dump($arr); echo "删除后的数组:" ; array_splice($arr,2,1); var_dump($arr); ?>
输出结果为:
可以看出只删除了第三个元素“20”。
在删除元素操作中,$length参数也有三种取值情况:
为正数,那么就表示删除 length 个元素;
为负数,那么将删除从 start 开始,到数组末尾倒数 length 为止的所有元素;
如果省略,那么将删除从 start 开始,一直到数组末尾的所有元素。
<?php header("Content-type:text/html;charset=utf-8"); $arr=array(10,12,20,25,24); echo "原数组:"; var_dump($arr); echo "删除后的数组:" ; array_splice($arr,2,-1); var_dump($arr); ?>
输出结果为:
$length参数还可以为0,那么就表示不删除元素,可以和该函数的第四个参数$value相配合,进行插入操作(这里就不做具体介绍了)。
到此,关于“php怎么去除任意元素”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。