php教程,如何理解array_shift()函数?数组移除首个元素
发布于 作者:苏南大叔 来源:程序如此灵动~ 我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...
有array_unshift()
函数,就存在array_shift()
函数。本文描述一下php
中的array_shift()
函数的使用方法。array_shift()
的主要作用是“将数组开头的单元移出数组”。接下来请看看相关代码例子,具体了解一下array_shift()
函数的使用注意事项。
苏南大叔的“程序如此灵动”技术博客,记录苏南大叔的代码经验总结。本文测试环境:win10
,nginx@1.15.11
,php@8.2.10-nts
。
函数原型
函数原型:
array_shift(array &$array): mixed
array_shift() 将 array 的第一个单元移出并作为结果返回,将 array 的长度减一并将所有其它单元向前移动一位。所有的数字键名将改为从零开始计数,文字键名将不变。
简单例子
$list = array("name"=>"苏南大叔","sunan大叔","site" => "newsn.net");
$ret = array_shift($list);
var_dump($list);
var_dump($ret);
输出:
array(2) {
[0]=>
string(11) "sunan大叔"
["site"]=>
string(9) "newsn.net"
}
string(12) "苏南大叔"
索引是否重置
数字索引将被重置,从零开始。但是,非数字索引不变。这一点上,array_shift()
和array_unshift()
两个函数的处理方式一致。
返回值丢失了key
返回值,不返回原来的key
,只返回value
。对于上面的例子来说,首个元素的key
信息丢失了。如果想保留相关信息的话,下面的代码可能会帮到你。【主体代码来自php
官方文档的评论区】
$list = array("name"=>"苏南大叔","sunan大叔","site" => "newsn.net");
function array_kshift(&$arr)
{
list($k) = array_keys($arr);
$r = array($k=>$arr[$k]);
unset($arr[$k]);
return $r;
}
$ret = array_kshift($list);
var_dump($list);
var_dump($ret);
输出:
array(2) {
[0]=>
string(11) "sunan大叔"
["site"]=>
string(9) "newsn.net"
}
array(1) {
["name"]=>
string(12) "苏南大叔"
}
移除多个元素
这个array_shift()
只会移除头部的一个元素。所以,如果想移除多个元素或者指定元素的话,可能array_slice()
更加符合要求。
参考文章:
相关文章
- https://newsn.net/say/php-array_unshift.html
- https://newsn.net/say/js-inarray.html
- https://newsn.net/say/php-implode.html
- https://newsn.net/say/python-slice-join.html
结束语
苏南大叔带来的更多php
经验文章,请点击下面的链接:
如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。