PHP array_shift()用法实例分析

yipeiwu_com6年前PHP代码库

本文实例讲述了PHP array_shift()用法。分享给大家供大家参考,具体如下:

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常用遍历算法与技巧总结

希望本文所述对大家PHP程序设计有所帮助。

相关文章

基于PHP创建Cookie数组的详解

创建:复制代码 代码如下:setcookie("ICNet[Reg]", "This is reg cookie", time() + 3600);setcookie("ICNet[Ac...

PHP+Apache实现二级域名之间共享cookie的方法

本文实例讲述了PHP+Apache实现二级域名之间共享cookie的方法。分享给大家供大家参考,具体如下: 简介 login.koastal.com设置domain为koastal.co...

PHP 多维数组的排序问题 根据二维数组中某个项排序

PHP内置函数 array_multisort 要求每个数组大小一样 $areas是地区的二维数组,包含人数和次数,现在要按这2种数进行降序排序 复制代码 代码如下: foreach($...

php做下载文件的实现代码及文件名中乱码解决方法

最近有人问我做下载文件的方法,对于php方法如下: 复制代码 代码如下: <?php header("Content-Type: application/force-downloa...

AJAX的跨域访问-两种有效的解决方法介绍

新的W3C策略实现了HTTP跨域访问,还亏我找了很久的资料解决这个问题:只需要在servlet中返回的头部信息中添加Access-Control-Allow-Origin这个既可。比如我...