2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > 【PHP基础-6】PHP数组的创建 访问及遍历实例解析

【PHP基础-6】PHP数组的创建 访问及遍历实例解析

时间:2020-10-18 00:57:05

相关推荐

【PHP基础-6】PHP数组的创建 访问及遍历实例解析

目录

1 数组简介2 一维数组的创建、访问和遍历2.1 数组的创建2.2 数组的访问2.3 数组的遍历3 多维数组的创建与访问4 预定义超全局数组变量5 数组内置函数6 归纳参考文章

1 数组简介

(1)定义: 数组是一个能在单个变量中存储多个值的特殊变量

(2)本质:PHP中的 array 实际上是一个有序映射。映射是一种把 values 关联到 keys 的类型。此类型针对多种不同用途进行了优化; 它可以被视为数组、列表(向量)、哈希表(映射的实现)、字典、集合、堆栈、队列等等。

(3)数组由键值对组成,键名(key)和键值(value)。

(4)数组元素:除了对象,可存放任意类型的数据,包括数组。

(5)数组按键名命名方式可以分为两类

数值数组:键名是整型正数,也称为索引数组。关联数组:键名是具有语义的字符串

2 一维数组的创建、访问和遍历

2.1 数组的创建

有两种方法创建数组。

(1)第一种创建方式语法为:$数组名[]=键值

1)在未指定键名的情况下,给数组赋值,键名从零开始计数,依次增大。具体实例如下:

<?php$stu[]="dzz";$stu[]=24;$stu[]=true;$stu[]=99;echo "<pre>";print_r($stu); //输出数组,echo只能输出普通变量echo "<br/>";var_dump($stu);?>

上述代码的运行结果如下:

2)可以手动给键名,键名可以为整型数字也可以是字符串。具体实例如下:

<?php$stu[10]="dzz";$stu[20]=24;$stu[30]=true;$stu[40]=99;echo "<pre>";print_r($stu); //输出数组,echo只能输出普通变量echo "<br/>";var_dump($stu);?>

上述代码的运行结果如下:

<?php//指定字符串键名$stu['name']="dzz";$stu['age']=24;$stu['sex']=true;$stu['grade']=99;echo "<pre>";print_r($stu); //输出数组,echo只能输出普通变量echo "<br/>";var_dump($stu);?>

上述代码的运行结果如下:

(2)第二种创建方式采用array结构创建数组,语法为数组名=array(键值,键值,...,键值)

1)未指定键名创建数组,键名从零开始计数,依次增大。具体实例如下:

<?php//未指定健名$stu1=array("dzz",24,true,99); //创建数组echo "<pre>";print_r($stu1); //输出数组,echo只能输出普通变量echo "<br/>";var_dump($stu1);?>

上述代码运行结果如下:

2)指定键名创建数组,具体实例如下:

<?php$stu2=array('name' => 'MDM','age' => 23,'sex' => false,'grade'=> 78);var_dump($stu2);

上述代码运行结果如下:

?>

2.2 数组的访问

可以通过数组名与键名来访问数组。数组的访问包括①数组的读取;②数组的添加;③数组的修改。注意数组的添加与修改的区别在于,对数组进行修改时,需要指定键名,且指定的键名是已存在的。实例如下:

<?phpecho "<pre>";echo "<hr/>";$stu2=array('name' => 'MDM','age' => 23,'sex' => false,'grade'=> 78);var_dump($stu2);echo "<hr/>";//想访问$stu2的名字echo $stu2['name'];echo "<hr/>";//给$stu2增加一个键值对$stu2[]=168;var_dump($stu2);echo "<hr/>";//将$stu2的grade键名对应的键值改为98;$stu2['grade']=98;var_dump($stu2);?>

上述代码的运行结果为:

2.3 数组的遍历

遍历数组可以采用for循环和foreach循环。两种循环语句用法可参考文章《【PHP基础-4】PHP流程控制语句》

(1)for循环。只适用于有规律的索引数组。

<?phpecho "<pre>";//未指定健名$stu1=array("dzz",24,true,99); //创建数组var_dump($stu1);//for循环遍历$stu1for($i=0;$i<count($stu1);$i++){echo $stu1[$i]."<br/>";}?>

上述代码的运行结果为:

(2)foreach循环。

<?phpecho "<pre>";$stu2=array('name' => 'MDM','age' => 23,'sex' => false,'grade'=> 78);var_dump($stu2);//foreach循环遍历$stu2foreach($stu2 as $key => $value){echo $key." => ".$value."<br/>";}?>

上述代码的运行结果为:

3 多维数组的创建与访问

<?phpecho "<pre>";$students=array(1 => array("dzz",24,true,99),2 => array("MDM",23,false,78),3 => array("XL",25,true,65));print_r($students);echo "<hr/>";//想访问第一个学生的成绩echo $students[1][3];?>

上述代码执行结果如下:

4 预定义超全局数组变量

定义:是指PHO定义好了的,可以直接使用。其中,超全局是指函数内部和外部均能使用。

5 数组内置函数

使用PHP内置的数组处理函数,将使得数据处理更加高效、代码更加简介。常用的内置函数有:

函数名 作用

array_keys() 函数 返回包含数组中所有键名的一个新数组

array_merge() 函数 用于把一个或多个数组合并为一个数组。

array_key_exists() 函数 检查某个数组中是否存在指定的键名

array_rand() 函数 返回数组中的一个随机键名,或者如果指定函数返回键名不只一个,则返回一个包含随机键名的数组。

array_search() 函数 在数组中搜索某个键值,并返回对应的键名。

array_sum() 函数 返回数组中所有值的和。

array_product() 函数 计算并返回数组的乘积。

6 归纳

掌握两种数组的创建、访问修改、遍历的方法;

了解数组操作函数的查询方法。

参考文章

[1] 《Array相关函数》用于查询可以应用操作数组的函数。

[2] 《【PHP基础】数组》

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。