首页 » PHP和MySQL Web开发(原书第4版) » PHP和MySQL Web开发(原书第4版)全文在线阅读

《PHP和MySQL Web开发(原书第4版)》第3章 使用数组

关灯直达底部

本章将介绍如何使用一个重要的编程结构——数组。在前面的章节中,我们所介绍的变量都是标量变量,这些变量只能存储单个数值。数组是一个可以存储一组或一系列数值的变量。一个数组可以具有许多个元素。每个元素有一个值,例如文本、数字或另一个数组。一个包含其他数组的数组称为多维数组。

PHP支持数字索引数组和关联数组。如果曾经使用过任何其他编程语言,你可能会很熟悉数字索引的数组,但是如果你没有使用过PHP或Perl,无论是否曾经使用过Hash、Map或dictionary对象,你可能就从来没有见过关联数组。关联数组允许你使用更有意义的数据作为索引。每个元素除了可以使用数字索引外,还可以使用字符串或其他有意义的信息作为索引。

在本章中,我们将使用数组继续开发Bob汽车配件商店的例子,使用数组可以更容易地处理重复信息,例如客户的订单。而且,将写出更简洁、更整齐的代码来完成前面章节中所实现的文件处理操作。

在本章中,将主要介绍以下内容:

■数字索引数组

■非数字索引数组

■数组操作符

■多维数组

■数组排序

■数组函数

3.1 什么是数组

在第1章中介绍了标量变量。一个标量变量就是一个用来存储数值的命名区域。同样,一个数组就是一个用来存储一系列变量值的命名区域,因此,可以使用数组组织标量变量。

在前面的例子中,将以Bob的产品列表作为数组的示例。在图3-1中,可以看到一个按数组格式存储的3种产品的列表,数组变量的名称为$products,它保存了3个变量值。

图 3-1 Bob的产品信息可以用数组存储

(下面将介绍如何创建一个类似于这个数组变量的变量。)

拥有数组信息后,就可以用它完成很多有用的事情。使用第1章的循环结构,可以完成针对数组中每个值的相同操作,这样就可以节省许多工作。数组信息的整个集合可以作为一个单元进行移动。通过这种方式,只要使用一行代码,所有数值就可以传递给一个函数。例如,希望按字母顺序对产品进行排序。要完成此操作,可以将整个数组传递给PHP的sort函数。

存储在数组中的值称为数组元素。每个数组元素有一个相关的索引(也称为关键字),它可以用来访问元素。在大多数编程语言中,数组都具有数字索引,而且这些索引通常是从0或1开始的。

PHP允许间隔性地使用数字或字符串作为数组的索引。可以将数组的索引设置为传统的数字型,也可以将索引设置为任何所希望的索引,这样可以使得索引更有意义和有用(如果曾经使用过其他编程语言的关联数组或映射表,你可能就会熟悉这种方法)。根据是否使用标准数字索引数组或更有趣的索引值的不同,编程方法也各不相同。

下面,将先从数字索引数组开始。然后介绍如何使用用户自定义的关键字。