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>