关于PHP堆栈与列队的学习


Posted in PHP onJune 21, 2013

在PHP中数组常被当作堆栈(后进先出:LIFO)与队列(先进先出:FIFO)结构来使用。PHP提供了一组函数可以用于push与pop(堆栈)还有shift与unshift(队列)来操作数组元素。堆栈与列队在实践中应用非常广泛。
我们可以先看下堆栈:
 

 <?php
   $arr = array();
   array_push($arr,'aaa');
   array_push($arr,'bbb');
   $arr.pop();
   print_r($arr);
?>
 

如果你打算把数组作为队列来使用(FIFO),你可以使用array_unshift()来增加元素,使用array_shift()删除:
<?php
   $arr = array();
   array_unshift($arr,'aaa');
   array_unshift($arr,'bbb');
   print_r($arr);
   array_shift($arr);
   print_r($arr);
?>

PHP 相关文章推荐
用php来检测proxy
Oct 09 PHP
一些PHP写的小东西
Dec 06 PHP
PHP生成HTML静态页面实例代码
Aug 31 PHP
php数组函数序列 之shuffle()和array_rand() 随机函数使用介绍
Oct 29 PHP
解析php中array_merge与array+array的区别
Jun 21 PHP
PHP include任意文件或URL介绍
Apr 29 PHP
php去除html标记的原生函数详解
Jan 27 PHP
php获取、检查类名、函数名、方法名的函数方法
Jun 25 PHP
php求一个网段开始与结束IP地址的方法
Jul 09 PHP
php解析url并得到url中的参数及获取url参数的四种方式
Oct 26 PHP
PHP7.1新功能之Nullable Type用法分析
Sep 26 PHP
ThinkPHP 在阿里云上的nginx.config配置实例详解
Oct 11 PHP
浅析PHP 按位与或 (^ 、&amp;)
Jun 21 #PHP
浅析PHP中Collection 类的设计
Jun 21 #PHP
解析PHP无限级分类方法及代码
Jun 21 #PHP
PHP 循环删除无限分类子节点的实现代码
Jun 21 #PHP
解析左右值无限分类的实现算法
Jun 20 #PHP
解析thinkphp的左右值无限分类
Jun 20 #PHP
PHP 清空varnish 缓存的详解(包括指定站点下的)
Jun 20 #PHP
You might like
php计算两个日期时间差(返回年、月、日)
2014/06/19 PHP
php实现图片局部打马赛克的方法
2015/02/11 PHP
Jquery 过滤器(first,last,not,even,odd)的使用
2014/01/22 Javascript
网页从弹窗页面单选框传值至父页面代码分享
2015/09/29 Javascript
jQuery插件Validate实现自定义表单验证
2016/01/18 Javascript
Bootstrap框架动态生成Web页面文章内目录的方法
2016/05/12 Javascript
JavaScript用构造函数如何获取变量的类型名
2016/12/23 Javascript
微信小程序 五星评分的实现实例
2017/08/04 Javascript
使用vue的transition完成滑动过渡的示例代码
2018/06/25 Javascript
vue.js使用watch监听路由变化的方法
2018/07/08 Javascript
vue.js 实现评价五角星组件的实例代码
2018/08/13 Javascript
详解webpack之图片引入-增强的file-loader:url-loader
2018/10/08 Javascript
javascript移动端 电子书 翻页效果实现代码
2019/09/07 Javascript
浅谈如何优雅处理JavaScript异步错误
2019/11/12 Javascript
vue 实现用户登录方式的切换功能
2020/04/14 Javascript
Python的ORM框架SQLAlchemy入门教程
2014/04/28 Python
讲解Python中fileno()方法的使用
2015/05/24 Python
python实现简单socket通信的方法
2016/04/19 Python
不同版本中Python matplotlib.pyplot.draw()界面绘制异常问题的解决
2017/09/24 Python
Ubuntu安装Jupyter Notebook教程
2017/10/18 Python
浅谈python可视化包Bokeh
2018/02/07 Python
Python实现的连接mssql数据库操作示例
2018/08/17 Python
Python中的 enum 模块源码详析
2019/01/09 Python
python ctypes库2_指定参数类型和返回类型详解
2019/11/19 Python
python 利用panda 实现列联表(交叉表)
2021/02/06 Python
解决HTML5中滚动到底部的事件问题
2019/08/22 HTML / CSS
床上用品全球在线购物:BeddingInn
2016/12/18 全球购物
澳大利亚巧克力花束和礼品网站:Tastebuds
2019/03/15 全球购物
小学生读书活动总结
2014/06/30 职场文书
教师节横幅标语
2014/10/08 职场文书
趵突泉导游词
2015/02/03 职场文书
公务员年终个人总结
2015/02/12 职场文书
校园新闻稿范文
2015/07/18 职场文书
美德少年主要事迹材料
2015/11/04 职场文书
关于PHP数组迭代器的使用方法实例
2021/11/17 PHP
mysql下的max_allowed_packet参数设置详解
2022/02/12 MySQL