PHP 数组基本操作小结(推荐)


Posted in PHP onJune 13, 2016

数组的概念

数组(array)是 PHP 中一个非常重要的概念,我们可以把数组看做一系列类似的数据的集合,实际上数组是一个有序图。

PHP 还提供了超过 70 个内建函数来操作数组。

创建数组

使用 array() 语言结构创建数组:

<?php
$arr_age1 = array(18, 20, 25);
// 或者:
$arr_age2 = array("wang"=>18, "li"=>20, "zhang"=>25);
// 空数组:
$arr_age3 =array();
?>

也可以使用数组控制器 [] 来创建数组:

<?php
$arr_age1[] = 18;
$arr_age1[] = 20;
$arr_age1[] = 25;
// 或者:
$arr_age2["wang"] = 18;
$arr_age2["li"] = 20;
$arr_age2["zhang"] = 25;
?>

数组键名与值

数组实体都包含两项:键名和值。

在下面创建数组的例子中:

$arr_age1 = array(18, 20, 25);我们给 $arr_age1 分配了 3 个数组单元(也称元素),其值分别是 18、20 和 25。系统会自动给这 3 个数组单元分配 3 个数字序号,分别为 0、1 和 2。即 $arr_age1 数组的完整结构为:

Array ( [0] => 18 [1] => 20 [2] => 25 ) 这个系统自动分配的序号称为键名,这种键名为数字 ID 的数组称为 索引数组( indexed array )。

当然也可以手动指定键名:

$arr_age1 = array( 0 => 18, 1 => 20, 2 => 25 );

注意:手动指定键名可以不从 0 开始,也可以不用按数字顺序来指定键名。当一个新单元加入数组而没有指定健名时,系统将自动的在现有数组中最大的数字键中加 1 ,作为新单元的键名。

当使用字符串而非数字索引作为键名时,这种数组称为 关联数组( associative array ):

$arr_age2 = array("wang"=>18, "li"=>20, "zhang"=>25);但在 PHP 中,这两种数组没有明显的界限,二者可以混合使用。注意关联数组中对于键名大小写是敏感的。

输出数组单元值

可以使用如下方式访问输出数组单元值:

echo $arr_age1[0];       
//输出:18

echo $arr_age2["wang"];   
//输出:18某些情况下为了调试,可能需要输出整个数组的数据及结构,这时候需要使用 print_r() 或 var_dump() 函数,具体参见PHP print_r 与 var_dump 输出数组

操作数组单元

可以象操作普通变量一样操作数组单元,如:

<?php
$arr_age2 = array("wang"=>18, "li"=>20, "zhang"=>25);
$arr_age2["wang"] = $arr_age2["wang"] + 10;
?>

现在 $arr_age2 为:

Array ( [wang] => 28 [li] => 20 [zhang] => 25 )
检查一个数组单元是被设定,请使用 isset() 。

销毁数组

使用 unset() 函数来销毁一个数组单元或整个数组:

<?php
unset($arr_age1[0]);
unset($arr_age1);
?>

多维数组

如果数组中的值也是数组时,我们就称这样的数组为递归数组或多维数组。

例子:

<?php
$all = array( "fruits" => array( "a"=>"orange", "b"=>"banana", "c"=>"apple"),
	"ages" => array( 18, 20, 25 )
	);
echo $all["fruits"]["c"];	//输出apple
echo $all["ages"][0];		//输出18
?>

以上这篇PHP 数组基本操作小结(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
zend framework配置操作数据库实例分析
Dec 06 PHP
关于Iframe如何跨域访问Cookie和Session的解决方法
Apr 15 PHP
解析PHP将对象转换成数组的方法(兼容多维数组类型)
Jun 21 PHP
PHP 导出Excel示例分享
Aug 18 PHP
PHP图片处理之使用imagecopyresampled函数实现图片缩放例子
Nov 19 PHP
PHP 中提示undefined index如何解决(多种方法)
Mar 16 PHP
php遍历替换目录下文件指定内容的方法
Nov 10 PHP
thinkPHP统计排行与分页显示功能示例
Dec 02 PHP
php微信公众平台开发(三)订阅事件处理
Dec 06 PHP
PHP开发APP端微信支付功能
Feb 17 PHP
解决安装WampServer时提示缺少msvcr110.dll文件的问题
Jul 09 PHP
php7连接MySQL实现简易查询程序的方法
Oct 13 PHP
PHP中header函数的用法及其注意事项详解
Jun 13 #PHP
PHP的时间戳与具体时间转化的简单实现
Jun 13 #PHP
PHP时间戳格式全部汇总 (获取时间、时间戳)
Jun 13 #PHP
Netbeans 8.2将支持PHP7 更精彩
Jun 13 #PHP
yii2 modal弹窗之ActiveForm ajax表单异步验证
Jun 13 #PHP
Windows下PHP开发环境搭建教程(Apache+PHP+MySQL)
Jun 13 #PHP
PHPStorm+XDebug进行调试图文教程
Jun 13 #PHP
You might like
php购物网站支付paypal使用方法
2010/11/28 PHP
php实现无限级分类实现代码(递归方法)
2011/01/01 PHP
用mysql_fetch_array()获取当前行数据的方法详解
2013/06/05 PHP
php输出xml属性的方法
2015/03/19 PHP
php获取文件类型和文件信息的方法
2015/07/10 PHP
PHP封装的PDO数据库操作类实例
2017/06/21 PHP
PHP数字金额转换成中文大写显示
2019/01/05 PHP
解决php用mysql方式连接数据库出现Deprecated报错问题
2019/12/25 PHP
jQuery 1.4 15个你应该知道的新特性(译)
2010/01/24 Javascript
getComputedStyle与currentStyle获取样式(style/class)
2013/03/19 Javascript
Jquery选择器中使用变量实现动态选择例子
2014/07/25 Javascript
关于Javascript加载执行优化的研究报告
2014/12/16 Javascript
jquery.mobile 共同布局遇到的问题小结
2015/02/10 Javascript
js css+html实现简单的日历
2016/07/14 Javascript
Bootstrap基本插件学习笔记之Alert警告框(20)
2016/12/08 Javascript
angularjs ocLazyLoad分步加载js文件实例
2017/01/17 Javascript
详解从0开始搭建微信小程序(前后端)的全过程
2019/04/15 Javascript
30分钟用Node.js构建一个API服务器的步骤详解
2019/05/24 Javascript
python3使用tkinter实现ui界面简单实例
2014/01/10 Python
python正则表达式re模块详细介绍
2014/05/29 Python
python和flask中返回JSON数据的方法
2018/03/26 Python
python内置数据类型之列表操作
2018/11/12 Python
Ubuntu下升级 python3.7.1流程备忘(推荐)
2018/12/10 Python
详解Python中的测试工具
2019/06/09 Python
pygame实现俄罗斯方块游戏(AI篇2)
2019/10/29 Python
Python一行代码解决矩阵旋转的问题
2019/11/30 Python
tensorflow生成多个tfrecord文件实例
2020/02/17 Python
Python 按比例获取样本数据或执行任务的实现代码
2020/12/03 Python
html5利用canvas实现颜色容差抠图功能
2019/12/23 HTML / CSS
官方授权图形T恤和服装:Fifth Sun
2019/06/12 全球购物
Javascript如何发送一个Ajax请求
2015/01/26 面试题
海量信息软件测试笔试题
2015/08/08 面试题
校车安全责任书
2014/08/25 职场文书
民政局离婚协议书范本
2014/10/20 职场文书
小学见习报告
2015/06/23 职场文书
CSS3中Animation实现简单的手指点击动画的示例
2021/07/15 HTML / CSS