php编程基础与案例开发教学课件作者刘丽第四章

上传人:E**** 文档编号:102564362 上传时间:2019-10-03 格式:PPTX 页数:69 大小:2.25MB
返回 下载 相关 举报
php编程基础与案例开发教学课件作者刘丽第四章_第1页
第1页 / 共69页
php编程基础与案例开发教学课件作者刘丽第四章_第2页
第2页 / 共69页
php编程基础与案例开发教学课件作者刘丽第四章_第3页
第3页 / 共69页
php编程基础与案例开发教学课件作者刘丽第四章_第4页
第4页 / 共69页
php编程基础与案例开发教学课件作者刘丽第四章_第5页
第5页 / 共69页
点击查看更多>>
资源描述

《php编程基础与案例开发教学课件作者刘丽第四章》由会员分享,可在线阅读,更多相关《php编程基础与案例开发教学课件作者刘丽第四章(69页珍藏版)》请在金锄头文库上搜索。

1、第4 章 PHP 数组,4.1 数组 4.2 二维数组 4.3 数组操作函数 4.4 数组的应用,4.1 数组,数组就是一组数据的集合,把一系列数据组织起来,形成一个可操作的整体。数组是一组有序的变量,其中每个变量都称为数组的一个元素, 要区分每个元素,可以使用数组的下标,也称为键。数组中的每个元素都 包含两部分:键和值,可以通过键来获取相应数组元素的值。 在 PHP 中,定义数组的方式主要有两种:一种是应用 array( )函数,另 一种是使用“ ”标识符,即直接为数组元素赋值。 有一个班级学生花名册,如果将其存储到单个变量中,如下所示:,下一页,返回,4.1 数组,一个班级有几十个学生,要

2、定义几十个这样的变量,显然,这会为程序员带来很大的工作量,并且如果想遍历所有的变量,并找出某个学生,这无疑是一种很糟糕的解决方法。那 么应该如何解决这样的需求呢?解决方法就是创建一个一维数组,因为在数组中可以通过键值访问某个数组元素。 4.1.1 通过数组标识符“”创建一维数组 为了方便对学生花名册的操作,可以创建一维数组。通过数组标识符“”创建一维数 组的方式如下: 需要注意的是,使用这种方式定义数组时,数组名必须相同。为了加深读者对这种定义数组方式的理解,下面列举一个实例,见例 4-1。,上一页,下一页,返回,4.1 数组,【例 4-1】使用“ ”标识符定义数组,保存 5 个学生的姓名,并

3、输出到网页中。 例 4-1 中的 print_r( )函数用于打印一个变量的信息。如果参数是字符串、整型或浮点型 的变量,将打印变量值本身;如果参数是数组型变量,则会按照一定的格式显示键名和值。 运行结果如图 4-1 所示。,上一页,下一页,返回,4.1 数组,通过图 4-1 可以看出,如果在定义数组时不指定下标,默认是从 0 开始的。如果希望数 组的下标从 1 开始,需要显示指定数组的下标,见例 4-2。 【例 4-2】使用“ ”标识符定义数组,下标从 1 开始,保存 5 个学生的姓名,并输出到网页中。,上一页,下一页,返回,4.1 数组,4.1.2 使用 array( )函数创建一维数组

4、一维数组定义的另一种定义方法是使用 array( )函数。其语法格式如下: 参数 mixed 的语法为 key=value,多个参数 mixed 之间用逗号分开,分别定义索引(下 标)和值。如果省略了索引,则自动产生从 0 开始的整数索引。如果索引是整数,则下一个产生的索引为当前索引值加 1。如果定义了两个完全一样的索引,则后面的数组元素会覆盖前一个数组元素。例 4-3 即是使用 array( )函数创建数组的实例。,上一页,下一页,返回,4.1 数组,【例 4-3】使用 array( )函数定义数组,保存 5 个学生的姓名,遍历数组的每个元素值输出 到网页中,每个学生姓名占一行。 例 4-3

5、 中的 count( )函数用来获取数组的长度,即数组中的元素个数,引用单个数组元素 可以使用下标的形式。运行结果如图 4-2 所示。,上一页,下一页,返回,4.1 数组,4.1.3 数组的分类 PHP 主要支持两种数组:数字索引数组和关联数组。数字索引数组使用整数作为键,关 联数组使用字符串作为键。 1. 数字索引数组 数字索引数组有两种创建方法: 自动分配索引键(索引键总是从 0 开始): 人工分配索引键(索引键可以不是连续的):,上一页,下一页,返回,4.1 数组,2. 关联数组 关联数组的键值是指定的字符串。主要有两种创建方法: 使用 array( )函数的方法,见例 4-4。 【例

6、4-4】定义关联数组,保存 5 个学生的姓名,键值为相应学生的学号。遍历数组的每 个元素并输出到网页中。,上一页,下一页,返回,4.1 数组,var_dump( )函数的功能是打印数组的内容,与 print_r( )函数的区别是 var_dump( )可以将 每个元素的数据类型一并打印出来,而 print_r( )函数只是打印值。运行结果如图 4-3 所示。 使用“ ”标识符的方法,如下: 关联数组只能使用键值字符串引用,不能使用数值键引用。因此,遍历关联数组就不能 使用 for 循环。那么,如果需要遍历关联数组,应该怎么办呢?这时可以使用 foreach 循环。 foreach 循环的语法格

7、式如下:,上一页,下一页,返回,4.1 数组,每进行一次循环,当前数组元素的值就会被赋值给 $value 变量,数组的键值赋给$key 变量,然后数组指针会移动到下一个元素的位置,因此,在进行下一次循环时,将看到数组 中的下一个值。其中$array 为要遍历的数组,as 为关键字,不能改变,$key 与$value 两个变 量的名字可以自定义。如果不需要访问键值,可以将“$key=”省略。使用 foreach 循环遍历 数组的用法见例 4-5。,上一页,下一页,返回,4.1 数组,【例 4-5】定义关联数组保存一周中每天所对应的中英文,其中,英文为键,中文为值。 遍历这个关联数组,每天占一行。

8、 运行结果如图 4-4 所示。,上一页,返回,4.2 二维数组,一个数组中的值可以是另一个数组,这样的数组称为二维数组。 4.2.1 通过数组标识符“”创建二维数组 【例 4-6】使用数组标识符“”创建二维数组。 运行结果如图 4-5 所示。,下一页,返回,4.2 二维数组,4.2.2 使用 array( )函数创建二维数组 使用 array( ) 创建二维数组见例 4-7。 【例 4-7】编写程序,使用 array( )函数创建二维数组,保存三个班级和每个班级的学生姓 名,遍历这个二维数组,将遍历结果显示到网页上。 运行结果如图 4-6 所示。,上一页,返回,4.3 数组操作函数,4.3.1

9、 转换数组函数 1. compact( )函数 compact( )函数用于将一个或多个变量,甚至数组变量转换为新的数组,这些变量的变量 名就是数组的键,变量值是数组元素的值。语法格式如下: compact( )函数的使用见例 4-8。,下一页,返回,4.3 数组操作函数,【例 4-8】编写程序,使用 compact( )创建数组,保存一个学生的姓名、年龄和爱好并输 出到网页中。 运行结果如图 4-7 所示。,上一页,下一页,返回,4.3 数组操作函数,2. extract( )函数 extract( )函数的功能与 compact( )函数的相反,作用是将数组中的每个元素转化为变量, 数组元

10、素的键就是对应的变量名,数组元素的值就是对应变量的值。 【例 4-9】编写程序,使用 extract( )函数将保存一个学生的姓名、年龄和爱好的数组转化 成三个变量,并将这三个变量的值输出到网页中。 运行结果如图 4-8 所示。,上一页,下一页,返回,4.3 数组操作函数,3. array_combine( )函数 array_combine( )函数的功能是使用两个数组创建一个新的数组,新数组的键来源于第一 个数组,值来源于第二个数组。其语法形式如下: array_combine( )函数的使用见例 4-10。 【例 4-10】编写程序,使用 array_combine( )函数创建一个数组

11、,保存一个学生的学号、 姓名和年龄,并将数组的值打印到网页中。 运行结果如图 4-9 所示。,上一页,下一页,返回,4.3 数组操作函数,4. range( )函数 range( )函数的功能是用指定范围内的值创建一个数组。语法格式如下: 参数$low 表示范围的最小值(含$low);参数$high 表示范围的最大值(含$high);参数$step 表示步进值,可以省略,如果省略,则步进值为 1。range( )函数的使用见例 4-11。,上一页,下一页,返回,4.3 数组操作函数,【例 4-11】编写程序,使用 range( )函数建立四个数组。 运行结果如图 4-10 所示。,上一页,下一

12、页,返回,4.3 数组操作函数,4.3.2 数组遍历函数 1. each( )函数与 list( )函数 each( )函数用来获取数组当前元素的值,获取之后指针移到下一个元素 所在的位置,list( )函数的功能是将数组中某个变量的键和值分别赋给指定 的变量。each( )函数与 list( )函数一起使用可以用来遍历数组元素的值。使 用 each( )函数与 list( )函数遍历数组的方法见例 4-12。,上一页,下一页,返回,4.3 数组操作函数,【例 4-12】使用 each( )函数与 list( )函数遍历数组。 运行结果如图 4-11 所示。,上一页,下一页,返回,4.3 数组

13、操作函数,2. key( )函数与 next( )函数 key( )函数用来获取数组当前元素的键名,next( )函数用来指向当前元素的指针后移,即 指向下一个数组元素。key( )函数与 next( )函数一起使用可以遍历数组的所有键名。 【例 4-13】使用 key( )函数与 next( )函数遍历数组键名。 运行结果如图 4-12 所示。,上一页,下一页,返回,4.3 数组操作函数,4.3.3 数组检查函数 1. array_key_exists( )函数 array_key_exists( )函数的功能是检查数组中是否存在某个键名,其返回值为布尔型,如 果存在,则返回 True,否则

14、返回 False。其语法格式如下: 参数$key 为要查找的键名,参数$search 为检查的数组。array_key_exists( )函数的使用方 法见例 4-14。,上一页,下一页,返回,4.3 数组操作函数,【例 4-14】 运行结果如图 4-13 所示。,上一页,下一页,返回,4.3 数组操作函数,2. in_array( )函数与 array_search( )函数 in_array( )函数与 array_search( )函数都是用来判断某个值是否是数组元素的值。其主要区 别就是 in_array( )函数返回的是布尔型,如果数组中存在这个值,则返回 True,否则返回 Fal

15、se。 而在使用 array_search( )函数时,如果数组中存在这个值,则返回这个值对应的键名,如果不 存在,则返回 NULL。in_array( )函数与 array_search( )函数的使用见例 4-15。 【例 4-15】in_array( )函数与 array_search( )函数使用实例。 运行结果如图 4-14 所示。,上一页,返回,4.4 数组的应用,数组在 PHP 中占有相当重要的作用,在实际应用 PHP 开发项目中,基本上都离不开数 组。接下来将对数组统计和数组排序进行介绍。 4.4.1 数组统计 1. count( )函数与 sizeof( )函数 count(

16、 )函数与 sizeof( )函数都是用来统计数组元素的个数的。使用方法 见例 4-16。 【例 4-16】 运行结果如图 4-15 所示。,下一页,返回,4.4 数组的应用,2. array_count_values( )函数 array_count_values( )函数的功能是统计数组中每个不同元素的值的出现次数,返回一个 新的数组。其语法格式如下。 参数$input 为需要统计的数组。 【例 4-17】使用 array_count_values( )函数统计不同元素出现的次数。 运行结果如图 4-16 所示。,上一页,下一页,返回,4.4 数组的应用,4.4.2 数组排序 在 PHP 中,有专门对数组进行排序的函数,可以对数组进行升序或降序排序,也可以对 数组元素按数字或字符串进行排序。 1. sort( )函数 sort( )函数的功能是对数组进行升序排序,排序后的结果删除了原来的键名,并重新分配 自动索引的键名。其语法形式如下: 参数$sort_flags 可以为以下 4 个值。 SORT_REGULAR:正常比较元素,不

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号