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制作新闻系统的思路
Oct 09 PHP
mysql4.1以上版本连接时出现Client does not support authentication protocol问题解决办法
Mar 15 PHP
php MYSQL 数据备份类
Jun 19 PHP
通过PHP current函数获取未知字符键名数组第一个元素的值
Jun 24 PHP
PHP四大安全策略
Mar 12 PHP
smarty模板引擎之内建函数用法
Mar 30 PHP
PHP后端银联支付及退款实例代码
Jun 23 PHP
[原创]PHP实现字节数Byte转换为KB、MB、GB、TB的方法
Aug 31 PHP
php实现生成带二维码图片并强制下载功能
Feb 24 PHP
实例介绍PHP删除数组中的重复元素
Mar 03 PHP
laravel 之 Eloquent 模型修改器和序列化示例
Oct 17 PHP
PHP的图像处理实例小结【文字水印、图片水印、压缩图像等】
Dec 20 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
基于文本的搜索
2006/10/09 PHP
PHP 杂谈《重构-改善既有代码的设计》之一 重新组织你的函数
2012/04/09 PHP
JavaScript 学习小结(适合新手参考)
2009/07/30 Javascript
12种不宜使用的Javascript语法整理
2013/11/04 Javascript
使用js Math.random()函数生成n到m间的随机数字
2014/10/09 Javascript
常见的jQuery选择器汇总
2014/11/24 Javascript
AngularJS入门教程(零):引导程序
2014/12/06 Javascript
JS实现的左侧竖向滑动菜单效果代码
2015/10/19 Javascript
鼠标拖动改变DIV等网页元素的大小的实现方法
2017/07/06 Javascript
浅谈JavaScript的innerWidth与innerHeight
2017/10/12 Javascript
jQuery length 和 size()区别总结
2018/04/26 jQuery
jQuery插件Validation表单验证详解
2018/05/26 jQuery
解决vue动态为数据添加新属性遇到的问题
2018/09/18 Javascript
vue 弹框产生的滚动穿透问题的解决
2018/09/21 Javascript
微信小程序搭建自己的Https服务器
2019/05/02 Javascript
5分钟教你用nodeJS手写一个mock数据服务器的方法
2019/09/10 NodeJs
JavaScript禁止右击保存图片,禁止拖拽图片的实现代码
2020/04/28 Javascript
Javascript查看大图功能代码实现
2020/05/07 Javascript
JS实现时间校验的代码
2020/05/25 Javascript
js通过canvas生成图片缩略图
2020/10/02 Javascript
[55:03]LGD vs EG 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
CentOS7.3编译安装Python3.6.2的方法
2018/01/22 Python
JS设计模式之责任链模式实例详解
2018/02/03 Python
1分钟快速生成用于网页内容提取的xslt
2018/02/23 Python
python与mysql数据库交互的实现
2020/01/06 Python
在keras中获取某一层上的feature map实例
2020/01/24 Python
python中提高pip install速度
2020/02/14 Python
Python中的特殊方法以及应用详解
2020/09/20 Python
使用css3做0.5px的细线的示例代码
2018/01/18 HTML / CSS
娇韵诗法国官网:Clarins法国
2019/01/29 全球购物
荷兰浴室和卫浴网上商店:Badkamerxxl.nl
2020/10/06 全球购物
运动会邀请函范文
2014/02/06 职场文书
食品安全处置方案
2014/06/14 职场文书
2014中学教师节广播稿
2014/09/10 职场文书
小学生差生评语
2014/12/29 职场文书
Java实现二维数组和稀疏数组之间的转换
2021/06/27 Java/Android