PHP array()
实例
创建名为 $cars 的索引数组,向它赋三个元素,然后打印包含数组值的文本:
<!DOCTYPE html><html><body><?php$cars=array("Volvo","BMW","Toyota");echo "I like " . $cars[0] . ", " . $cars[1] . " and " . $cars[2] . ".";?></body></html>
定义和用法
array() 函数用于创建数组。
在 PHP 中,有三种类型的数组:
- 索引数组 - 带有数字索引的数组
- 关联数组 - 带有指定的键的数组
- 多维数组 - 包含一个或多个数组的数组
说明
array() 创建数组,带有键和值。如果在规定数组时省略了键,则生成一个整数键,这个 key 从 0 开始,然后以 1 进行递增。
要用 array() 创建一个关联数组,可使用 => 来分隔键和值。
要创建一个空数组,则不传递参数给 array():
$new = array();
注意:array() 实际上是一种语言结构 (language construct),通常用来定义直接量数组,但它的用法和函数的用法很相似,所以我们把它也列到手册中。
语法
索引数组的语法:
array(value1,value2,value3,etc.);
关联数组的语法:
array(key=>value,key=>value,key=>value,etc.);
| 参数 | 描述 |
|---|---|
| key | 规定键名(数值或字符串)。 |
| value | 规定键值。 |
技术细节
| 返回值: | 返回参数的数组。 |
| PHP 版本: | 4+ |
| 更新日志: | 自 PHP 5.4 起,可以使用短数组语法,用 [] 代替 array()。 例如,用 $cars=["Volvo","BMW"]; 代替 $cars=array("Volvo","BMW"); |
更多实例
例子 1
创建名为 $age 的关联数组:
<!DOCTYPE html><html><body><?php$age=array("Bill"=>"60","Steve"=>"56","Mark"=>"31");echo "Bill is " . $age['Bill'] . " years old.";?></body></html>
例子 2
遍历并打印索引数组的值:
<!DOCTYPE html><html><body><?php$cars=array("Volvo","BMW","Toyota");$arrlength=count($cars);for($x=0;$x<$arrlength;$x++){echo $cars[$x];echo "<br>";}?></body></html>
例子 3
遍历并打印关联数组的所有值:
<!DOCTYPE html><html><body><?php$age=array("Bill"=>"60","Steve"=>"56","Mark"=>"31");foreach($age as $x=>$x_value){echo "Key=" . $x . ", Value=" . $x_value;echo "<br>";}?></body></html>
例子 4
创建多维数组:
<!DOCTYPE html><html><body><?php// 二维数组:$cars=array(array("Volvo",100,96),array("BMW",60,59),array("Toyota",110,100));echo $cars[0][0].": Ordered: ".$cars[0][1].". Sold: ".$cars[0][2]."<br>";echo $cars[1][0].": Ordered: ".$cars[1][1].". Sold: ".$cars[1][2]."<br>";echo $cars[2][0].": Ordered: ".$cars[2][1].". Sold: ".$cars[2][2]."<br>";?></body></html>