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 相关文章推荐
php中的时间处理
Oct 09 PHP
mysql5详细安装教程
Jan 15 PHP
IIS7.X配置PHP运行环境小结
Jun 09 PHP
php 判断网页是否是utf8编码的方法
Jun 06 PHP
让CodeIgniter的ellipsize()支持中文截断的方法
Jun 12 PHP
php实现的css文件背景图片下载器代码
Nov 11 PHP
Smarty变量用法详解
May 11 PHP
Zend Framework教程之Zend_Helpers动作助手ViewRenderer用法详解
Jul 20 PHP
php封装的验证码工具类完整实例
Oct 19 PHP
PHP实现用户异地登录提醒功能的方法【基于thinkPHP框架】
Mar 15 PHP
PHP中cookie知识点学习
May 06 PHP
php curl操作API接口类完整示例
May 21 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的配置文件php.ini
2006/10/09 PHP
解析PHP实现下载文件的两种方法
2013/07/05 PHP
php+mysqli实现批量替换数据库表前缀的方法
2014/12/29 PHP
php隐藏实际地址的文件下载方法
2015/04/18 PHP
PHP中对数组的一些常用的增、删、插操作函数总结
2015/11/27 PHP
WordPress后台中实现图片上传功能的实例讲解
2016/01/11 PHP
PHP在弹框中获取foreach中遍历的id值并传递给地址栏
2017/06/13 PHP
thinkphp3.2实现在线留言提交验证码功能
2017/07/19 PHP
PHP实现的字符串匹配算法示例【sunday算法】
2017/12/19 PHP
php使用fputcsv实现大数据的导出操作详解
2020/02/27 PHP
刷新页面实现方式总结(HTML,ASP,JS)
2008/11/13 Javascript
Web前端设计模式  制作漂亮的弹出层
2010/10/29 Javascript
function foo的原型与prototype属性解惑
2010/11/19 Javascript
js原型继承的两种方法对比介绍
2014/03/30 Javascript
jQuery中detach()方法用法实例
2014/12/25 Javascript
JavaScript实现点击文字切换登录窗口的方法
2015/05/11 Javascript
JavaScript实现的经典文件树菜单效果
2015/09/08 Javascript
基于JavaScript实现移除(删除)数组中指定元素
2016/01/04 Javascript
JS实现去除数组中重复json的方法示例
2017/12/21 Javascript
vue用Object.defineProperty手写一个简单的双向绑定的示例
2018/07/09 Javascript
Vue插件打包与发布的方法示例
2018/08/20 Javascript
在webstorm开发微信小程序之使用阿里自定义字体图标的方法
2018/11/15 Javascript
layui 富文本图片上传接口与普通按钮 文件上传接口的例子
2019/09/23 Javascript
JavaScript字符串处理常见操作方法小结
2019/11/15 Javascript
对dataframe进行列相加,行相加的实例
2018/06/08 Python
Django 多语言教程的实现(i18n)
2018/07/07 Python
Python文件常见操作实例分析【读写、遍历】
2018/12/10 Python
Python代码生成视频的缩略图的实例讲解
2019/12/22 Python
pymysql的简单封装代码实例
2020/01/08 Python
Pandas将列表(List)转换为数据框(Dataframe)
2020/04/24 Python
Python+Django+MySQL实现基于Web版的增删改查的示例代码
2020/05/13 Python
python+selenium实现12306模拟登录的步骤
2021/01/21 Python
python读取excel数据并且画图的实现示例
2021/02/08 Python
诚实守信道德模范事迹材料
2014/08/15 职场文书
先进教育工作者事迹材料
2014/12/23 职场文书
MySQL库表太大怎么办? 数据库分库分表项目实践
2022/04/11 MySQL