PHP array_shift()用法实例分析

yipeiwu_com7年前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 Class&Object -- PHP 自排序二叉树的深入解析

在节点之间再应用一些排序逻辑,二叉树就能提供出色的组织方式。对于每个节点,都让满足所有特定条件的元素都位于左节点及其子节点。在插入新元素时,我们需要从树的第一个节 点(根节点)开始,判断...

解析将多维数组转换为支持curl提交的一维数组格式

复制代码 代码如下:/**     * @desc    多维数组转化为支持curl提交数组  ...

学习php设计模式 php实现建造者模式

学习php设计模式 php实现建造者模式

建造者模式可以让一个产品的内部表象和和产品的生产过程分离开,从而可以生成具有不同内部表象的产品。 一、Builder模式结构图   二、Builder模式中主要角色 抽象建造...

PHP 全角转半角实现代码

复制代码 代码如下: /** * 将一个字串中含有全角的数字字符、字母、空格或'%+-()'字符转换为相应半角字符 * @access public * @param string $s...

php完全过滤HTML,JS,CSS等标签

记得以前写过一篇文章 php有效的过滤html标签,js代码,css样式标签: 复制代码 代码如下:<?php $str = preg_replace( "@<script(...