php笔记之:php数组相关函数的使用


Posted in PHP onApril 26, 2013

创建数组就不再说了  array()函数

提取数组可以用list().

测试数组元素 ,可以用is_array()

接受一个参数,传进来的变量,如果变量是数组,返回true如果不是返回false.

添加和删除数组元素

数组的fifo和lifo

先解释下什么是fifo和lifo

删除元素与加入元素的顺序相同,称为先进先出,既first-in-first-out

删除元素与加入元素的顺序相反,称为后进先出,既last-in-first-out

相对应的对数组的操作

  • array_unshift()
  • int aray_unshift(array array,mixed variable [,mixed variable...])

在数组头添加元素,所有已有的数值键都会相应的改变,以反映在数组中的新位置,关联键不受影响.

例:

<?php

$words = array('a','b','c');

print_r($words);

//array([0]->a,[1]->b,[2]->c);

array_unshift($words,'d');

print_r($words);

//array([0]->d,[1]->a,[2]->b,[3]->c);

  • array_shift()
  • mixed array_shift(array array)

从数组头删除元素,删除并返回数组中找到的元素,结果是,如果使用的是数值键,则所有相应的值都会下移.如果使用的是关联键,数组不受影响.

例:

<?php
$words = array('a','b','c');

print_r($words);

//array([0]->a,[1]->b,[2]->c);

array_shift($words,'a');

print_r($words);

//array([0]->b,[1]->c);

  • array_push()
  • int array_push(array array ,mixed variable [,mixed variable...])

从数组尾添加元素,将variable添加到数组的末尾,成功返回true 失败返回false.可以传递多个参数,作为输入,同时向数组压入多个变量.

例:

<?php
$stack 
= array("orange""banana"
);
array_push($stack"apple""raspberry"
);
print_r($stack
);
?>

本例将使 $stack 具有如下单元:

Array ( [0] => orange [1] => banana [2] => apple [3] => raspberry )

-------------------------------------------------------------

上例摘自PHP手册.对于数组操作,使用$array[]=,可以增加效率.因为不需要调用函数.

--------------------聪明的分割线-----------------------------

  • array_pop()
  • mixed array_pop(array target_array)

从数组末尾删除元素并返回数组的最后一个元素.

<?php
$stack 
= array("orange""banana""apple""raspberry"
);
$fruit array_pop($stack
);
print_r($stack
);
?>

经过此操作后,$stack 将只有 3 个单元:

Array ( [0] => orange [1] => banana [2] => apple )

------------------------------------------------------

上例摘自PHP手册

-------------------------聪明的分割线-----------------

自己的一些总结和观点.

以上四个函数,有的时候可能用处很大,首先说返回值

注意array_unshift()和array_push()的返回值应该是布尔型,但是手册上和相关图书上都标注说返回的是int型.这个值得思考.

array_shift()和array_pop()两个函数不仅能够实现删除相关数组的元素,并且能够返回所删除的数组元素.先写到这里,后面还有很多.慢慢总结.

PHP 相关文章推荐
给初学PHP的5个入手程序
Nov 23 PHP
PHP 柱状图实现代码
Dec 04 PHP
Zend framework处理一个http请求的流程分析
Feb 08 PHP
PHP获取mysql数据表的字段名称和详细信息的方法
Sep 27 PHP
PHP判断一个字符串是否是回文字符串的方法
Mar 23 PHP
PHP计算指定日期所在周的开始和结束日期的方法
Mar 24 PHP
php投票系统之增加与删除投票(管理员篇)
Jul 01 PHP
php封装的smarty类完整实例
Oct 19 PHP
kindeditor 加入七牛云上传的实例讲解
Nov 12 PHP
PHP中的访问修饰符简单比较
Feb 02 PHP
PHP生成指定范围内的N个不重复的随机数
Mar 18 PHP
thinkPHP框架通过Redis实现增删改查操作的方法详解
May 13 PHP
php笔记之:有规律大文件的读取与写入的分析
Apr 26 #PHP
php笔记之:文章中图片处理的使用
Apr 26 #PHP
php笔记之:初探PHPcms模块开发介绍
Apr 26 #PHP
input file获得文件根目录简单实现
Apr 26 #PHP
dhtmlxTree目录树增加右键菜单以及拖拽排序的实现方法
Apr 26 #PHP
php上传apk后自动提取apk包信息的使用(示例下载)
Apr 26 #PHP
关于二级目录拖拽排序的实现(源码示例下载)
Apr 26 #PHP
You might like
yii2中使用Active Record模式的方法
2016/01/09 PHP
textarea中的手动换行处理的jquery代码
2011/02/26 Javascript
js iframe跨域访问(同主域/非同主域)分别深入介绍
2013/01/24 Javascript
JavaScript利用append添加元素报错的解决方法
2014/07/01 Javascript
用js代码和插件实现wordpress雪花飘落效果的四种方法
2014/12/15 Javascript
JS+CSS实现的简单折叠展开多级菜单效果
2015/09/12 Javascript
深入浅析JavaScript中prototype和proto的关系
2015/11/15 Javascript
Immutable 在 JavaScript 中的应用
2016/05/02 Javascript
jQuery实现的省市县三级联动菜单效果完整实例
2016/08/01 Javascript
移动端利用H5实现压缩图片上传功能
2017/03/29 Javascript
Angularjs 与 bower安装和使用详解
2017/05/11 Javascript
Node.js编写CLI的实例详解
2017/05/17 Javascript
基于Vue实现支持按周切换的日历
2020/09/24 Javascript
AngularJS实现的生成随机数与猜数字大小功能示例
2017/12/25 Javascript
解决vue 绑定对象内点击事件失效问题
2018/09/05 Javascript
jQuery实现经典的网页3D轮播图封装功能【附源码下载】
2019/02/15 jQuery
Vue-cli3.X使用px2 rem遇到的问题及解决方法
2019/08/08 Javascript
vue实现pdf文档在线预览功能
2019/11/26 Javascript
基于JS实现计算24点算法代码实例解析
2020/07/23 Javascript
[01:04:22]2018DOTA2亚洲邀请赛 3.31 小组赛 B组 IG vs EG
2018/04/01 DOTA
shelve  用来持久化任意的Python对象实例代码
2016/10/12 Python
Python使用pickle模块存储数据报错解决示例代码
2018/01/26 Python
NumPy 如何生成多维数组的方法
2018/02/05 Python
HTML5 中新的全局属性(整理)
2013/07/31 HTML / CSS
阿里旅行:飞猪
2017/01/05 全球购物
万宝龙英国官网:Montblanc手表、书写工具、皮革和珠宝
2018/10/16 全球购物
最新的小工具和卓越的产品设计:Oh That Tech!
2019/08/07 全球购物
飞利浦美国官网:Philips美国
2020/02/28 全球购物
C#如何调用Word并打开一个Word文档
2013/05/08 面试题
如何通过 CSS 写出火焰效果
2021/03/24 HTML / CSS
大学教师年终总结的自我评价
2013/10/29 职场文书
企业行政文员岗位职责
2013/12/03 职场文书
2015年安康杯竞赛活动总结
2015/03/26 职场文书
什么是动态刷新率DRR? Windows11动态刷新率功能介绍
2021/11/21 数码科技
Python OpenCV之常用滤波器使用详解
2022/04/07 Python
vue/cli 配置动态代理无需重启服务的方法
2022/05/20 Vue.js