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程序设计有所帮助。

相关文章

Discuz!下Memcache缓存实现方法

前言:在PHP+MySQL架构的站点中,本文重点从MySQL的角度去分析如何使Discuz!论坛(或者类似的PHP+MySQL架构的程序)应对大访问量。同时给出一些使用Memcache去...

使用图灵api创建微信聊天机器人

使用图灵api创建微信聊天机器人

需要准备的资源: 图灵机器人账号 微信公共账号 点击访问 图灵机器人官网,快快注册,拥有自己的聊天机器人,可以在这里先体验一下 今天主要简述微信公共平台聊天机器人的搭建,首先需要注册微...

深入php self与$this的详解

先谈parent与self:复制代码 代码如下:<?php/* * Created by YinYiNiao */ class A{ &nb...

PHP实现将多个文件中的内容合并为新文件的方法示例

本文实例讲述了PHP实现将多个文件中的内容合并为新文件的方法。分享给大家供大家参考,具体如下: function test() { $hostdir= iconv("utf-8"...

通过PHP的内置函数,通过DES算法对数据加密和解密

由于项目的需要,要写一个能生成“授权码”的类(授权码主要包含项目使用的到期时间),生成的授权码将会写入到一个文件当中,每当项目运行的时候,会自动读取出文件中的密文,然后使用唯一的“密钥”...