首页 > 编程笔记 > PHP笔记 阅读:49

PHP中的索引数组和关联数组(附带实例)

PHP 中的数组分为数字索引数组(简称索引数组)和关联索引数组(简称关联数组),本节详细讲解这两种数组的使用方法。

PHP索引数组

索引数组是最常见的数组类型,默认从 0 开始计数。另外,数组变量在使用时即可创建,创建时即可使用。

声明数组的方法有两种:
1) 使用 array() 函数声明数组,具体的声明数组的方式如下:
array([mixed])
其中参数 mixed 的语法为key=>value。如果有多个 mixed,可以用逗号分开,分别定义索引和值。

例如:
$arr = array("1"=> "空调", "2"=>"冰箱", "3"=>"洗衣机", "4"=>"电视机");
利用 array() 函数定义比较方便,可以只给出数组的元素值,而不需要给出键值,例如:
$arr = array( "空调","冰箱","洗衣机","电视机");

2) 直接通过为数组元素赋值的方式声明数组
如果在创建数组时不知道数组的大小,或者数组的大小可能会根据实际情况发生变化,此时可以使用直接赋值的方式声明数组,例如:
$arr[1]= "空调";
$arr[2]= "冰箱"
$arr[3]= "洗衣机";
$arr[4]= "电视机";

下面以酒店网站系统中的酒店房价为例讲解数组元素的赋值与访问。
<?php
$roomtypes = array( '单床房','标准间','三床房','VIP套房');
echo
    $roomtypes[0]."\t".$roomtypes[1]."\t".$roomtypes[2]."\t".$roomtypes[3]."<b
    r/>";
echo "$roomtypes[0] $roomtypes[1] $roomtypes[2] $roomtypes[3] <br/>";
$roomtypes[0] = '单人大床房';
echo "$roomtypes[0] $roomtypes[1] $roomtypes[2] $roomtypes[3]<br/>";
?>
运行结果为:

单床房 标准间 三床房 VIP套房
单床房 标准间 三床房 VIP套房
单人大床房 标准间 三床房 VIP套房

$roomtypes 为一维数组,用关键字 array 声明,并且用“=”赋值给数组变量 $roomtypes。

'单床房'、'标准间'、'三床房'和'VIP套房'为数组元素,且这些元素为字符串型,用单引号方式表示。每个数组元素用“,”分开。echo 命令直接打印数组元素,元素索引默认从 0 开始,所以第一个数组元素为 $roomtypes[0]。

数组元素可以直接通过“=”号赋值,如$roomtypes[0] = '单人大床房';,echo 打印后为“单人大床房”。

PHP关联数组

关联数组的键名可以是数值和字符串混合的形式,而不像索引数组的键名只能为数字。所以判断一个数组是否为关联数组的依据是:数组中的键名是否存在不是数字的字符,如果存在,就为关联数组。

下面以使用关联索引数组编写酒店房间类型为例进行讲解。
<?php
$prices_per_day = array('单床房'=> 298,'标准间'=> 268,'三床房'=> 198,'VIP套房'=>
    368);
echo $prices_per_day['标准间']."<br/>";
?>
运行结果为:

268

其中,echo 命令直接指定数组 $prices_per_day 中的关键字索引'标准间'(是一个字符串)便可打印出数组元素 268(是一个整型数字)。

相关文章