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 选项及相关信息函数库
Dec 04 PHP
php将会员数据导入到ucenter的代码
Jul 18 PHP
PHP curl_setopt()函数实例代码与参数分析
Jun 02 PHP
一个严格的PHP Session会话超时时间设置方法
Jun 10 PHP
PHP判断网络文件是否存在的方法
Mar 12 PHP
ThinkPHP数据操作方法总结
Sep 28 PHP
PHP图形操作之Jpgraph学习笔记
Dec 25 PHP
php支持断点续传、分块下载的类
May 02 PHP
PHP常用算法和数据结构示例(必看篇)
Mar 15 PHP
ThinkPHP整合datatables实现服务端分页的示例代码
Feb 10 PHP
PHP设计模式之组合模式定义与应用示例
Feb 01 PHP
YII2框架中查询生成器Query()的使用方法示例
Mar 18 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
关于php支持分块与断点续传文件下载功能代码
2014/05/09 PHP
php使用fputcsv()函数csv文件读写数据的方法
2015/01/06 PHP
php实现读取内存顺序号
2015/03/29 PHP
PHP异常处理浅析
2015/05/12 PHP
WordPress中查询文章的循环Loop结构及用法分析
2015/12/17 PHP
PHP图像裁剪缩略裁切类源码及使用方法
2016/01/07 PHP
Symfony2框架学习笔记之表单用法详解
2016/03/18 PHP
php车辆违章查询数据示例
2016/10/14 PHP
基于jQuery的Spin Button自定义文本框数值自增或自减
2010/07/17 Javascript
javascript打印输出json实例
2013/11/11 Javascript
判断复选框是否被选中的两种方法
2014/06/04 Javascript
教你如何在 Javascript 文件里使用 .Net MVC Razor 语法
2014/07/23 Javascript
js实现鼠标滑过文字链接色彩变化的效果
2015/05/06 Javascript
原生javascript实现解析XML文档与字符串
2016/03/01 Javascript
Bootstrap表格使用方法详解
2017/02/17 Javascript
js+canvas实现动态吃豆人效果
2017/03/22 Javascript
浅谈React的最大亮点之虚拟DOM
2018/05/29 Javascript
详解Angular中实现自定义组件的双向绑定的两种方法
2018/11/23 Javascript
基于vue实现图片验证码倒计时60s功能
2019/12/10 Javascript
微信小程序静默登录的实现代码
2020/01/08 Javascript
antd Form组件方法getFieldsValue获取自定义组件的值操作
2020/10/29 Javascript
python从入门到精通(DAY 3)
2015/12/20 Python
解决Python 遍历字典时删除元素报异常的问题
2016/09/11 Python
python读取一个目录下所有txt里面的内容方法
2018/06/23 Python
pandas 将索引值相加的方法
2018/11/15 Python
Python之pymysql的使用小结
2019/07/01 Python
这可能是最好玩的python GUI入门实例(推荐)
2019/07/19 Python
Python IDE环境之 新版Pycharm安装详细教程
2020/03/05 Python
python和JavaScript哪个容易上手
2020/06/23 Python
CSS3模拟动画下拉菜单效果
2017/04/12 HTML / CSS
时尚孕妇装:HATCH Collection
2019/09/24 全球购物
无犯罪记录证明
2014/09/19 职场文书
回门宴新娘答谢词
2015/09/29 职场文书
2016十一国庆节慰问信
2015/12/01 职场文书
七年级作文之秋游
2019/10/21 职场文书
Dashboard管理Kubernetes集群与API访问配置
2022/04/01 Servers