array_shift()将数组开头的单元移出数组,并作为结果返回,将数组长度减一并将所有其它单元向前移动一位。所有的数字键名将改为从零开始计数,文字键名将不变。如果数组为空或不是一个数组则返回 NULL。
注意:如果元素量很大,这个操作会很耗时,因为要重新计算索引,时间复杂度为O(n);改进方法是先用array_reverse(),再用array_pop()。
简单事例如下:
$arr = array('a','b','c','d','e'); print_r($arr); $arr0 = array_shift($arr); print_r($arr0); $arr1 = array_reverse($arr); print_r($arr1); array_pop($arr1); print_r($arr1); $arr = array_reverse($arr1); print_r($arr);
运行结果:
Array
(
[0] => a
[1] => b
[2] => c
[3] => d
[4] => e
)
aArray
(
[0] => e
[1] => d
[2] => c
[3] => b
)
Array
(
[0] => e
[1] => d
[2] => c
)
Array
(
[0] => c
[1] => d
[2] => e
)
更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP数组(Array)操作技巧大全》、《php排序算法总结》、《PHP数据结构与算法教程》、《php程序设计算法总结》、《php字符串(string)用法总结》及《PHP常用遍历算法与技巧总结》