Alan Hou的个人博客

PHP数组详解

数组定义

数组就是一个键值对组成的语言结构,键类似于酒店的房间号,值类似于酒店房间里存储的东西。

如果你去某个酒店住店,服务员会告诉你房间号是多少,具体房间里有存储了什么,那就需要根据房间号进到房间里才知道了。

下面的图能更清晰的说明啥是数组。

知道数组后,是不是就很希望创建自己的数组了呢?

$arr = array();表示创建一个空数组,并把创建的空数组赋值给变量$arr。

索引数组初始化

PHP有两种数组:索引数组、关联数组。

索引和关联两个词都是针对数组的键而言的。

先介绍下索引数组,索引数组是指数组的键是整数的数组,并且键的整数顺序是从0开始,依次类推。

下面使用图来说明一下:

可以使用下面代码实现:

$fruit = array("苹果","香蕉","菠萝"); 注意数组的键是从0开始的。可以使用print_r($fruit);语句输出数组键及对应的值。

索引数组赋值

索引数组赋值有三种方式:

第一种:用数组变量的名字后面跟一个中括号的方式赋值,当然,索引数组中,中括号内的键一定是整数。比如,$arr[0]='苹果';

 

第二种:用array()创建一个空数组,使用=>符号来分隔键和值,左侧表示键,右侧表示值。当然,索引数组中,键一定是整数。比如,array('0'=>'苹果');

 

第三种:用array()创建一个空数组,直接在数组里用英文的单引号'或者英文的双引号"赋值,数组会默认建立从0开始的整数的键。比如array('苹果');这个数组相当于array('0'=>'苹果');

 

访问索引数组内容

有的时候我们需要把数组中的内容也就是值取出来该怎么办呢?用数组变量的名字后跟的中括号中的键,来访问数组中的值。

例如:

上面代码的作用:先把一个数组$fruit第一个值取出来然后赋给一个变量$fruit0,最后输出变量值。

for循环访问索引数组里的值

for循环可以将数组里的所有值都访问到,下面我们展示下,用for循环访问索引数组里的值。

例如:

 

foreach循环访问索引数组里的值

foreach循环可以将数组里的所有值都访问到,下面我们展示下,用foreach循环访问索引数组里的值。

例如:

 

关联数组初始化

回顾下前面介绍的内容,PHP有两种数组:索引数组、关联数组。

索引和关联两个词都是针对数组的键而言的。

先介绍下,关联数组是指数组的键是字符串的数组。

可以使用下面代码实现:

可以使用print_r($fruit);语句输出数组键及对应的值。

关联数组赋值

关联数组赋值有两种方式:

第一种:用数组变量的名字后面跟一个中括号的方式赋值,当然,关联数组中,中括号内的键一定是字符串。比如,$arr['apple']='苹果';

 

第二种:用array()创建一个空数组,使用=>符号来分隔键和值,左侧表示键,右侧表示值。当然,关联数组中,键一定是字符串。比如,array('apple'=>'苹果');

访问关联数组内容

用数组变量的名字后跟中括号+键的方式来访问数组中的值,键使用的单引号或者双引号括起来。

比如:

上面代码的作用:先把一个数组$fruit中键为banana字符串的值取出来然后赋给一个另一个变量$fruit0,最后输出变量值。

foreach循环访问关联数组里的值

foreach循环可以将数组里的所有值都访问到,下面我们展示下,用foreach循环访问关联数组里的值。

例如:

 

退出移动版