PHP array()

实例

创建名为 $cars 的索引数组,向它赋三个元素,然后打印包含数组值的文本:

  1. <!DOCTYPE html>
  2. <html>
  3. <body>
  4. <?php
  5. $cars=array("Volvo","BMW","Toyota");
  6. echo "I like " . $cars[0] . ", " . $cars[1] . " and " . $cars[2] . ".";
  7. ?>
  8. </body>
  9. </html>

定义和用法

array() 函数用于创建数组。

在 PHP 中,有三种类型的数组:

  • 索引数组 - 带有数字索引的数组
  • 关联数组 - 带有指定的键的数组
  • 多维数组 - 包含一个或多个数组的数组
说明

array() 创建数组,带有键和值。如果在规定数组时省略了键,则生成一个整数键,这个 key 从 0 开始,然后以 1 进行递增。

要用 array() 创建一个关联数组,可使用 => 来分隔键和值。

要创建一个空数组,则不传递参数给 array():

  1. $new = array();

注意:array() 实际上是一种语言结构 (language construct),通常用来定义直接量数组,但它的用法和函数的用法很相似,所以我们把它也列到手册中。


语法

索引数组的语法:

  1. array(value1,value2,value3,etc.);

关联数组的语法:

  1. 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 的关联数组:

  1. <!DOCTYPE html>
  2. <html>
  3. <body>
  4. <?php
  5. $age=array("Bill"=>"60","Steve"=>"56","Mark"=>"31");
  6. echo "Bill is " . $age['Bill'] . " years old.";
  7. ?>
  8. </body>
  9. </html>
例子 2

遍历并打印索引数组的值:

  1. <!DOCTYPE html>
  2. <html>
  3. <body>
  4. <?php
  5. $cars=array("Volvo","BMW","Toyota");
  6. $arrlength=count($cars);
  7. for($x=0;$x<$arrlength;$x++)
  8. {
  9. echo $cars[$x];
  10. echo "<br>";
  11. }
  12. ?>
  13. </body>
  14. </html>
例子 3

遍历并打印关联数组的所有值:

  1. <!DOCTYPE html>
  2. <html>
  3. <body>
  4. <?php
  5. $age=array("Bill"=>"60","Steve"=>"56","Mark"=>"31");
  6. foreach($age as $x=>$x_value)
  7. {
  8. echo "Key=" . $x . ", Value=" . $x_value;
  9. echo "<br>";
  10. }
  11. ?>
  12. </body>
  13. </html>
例子 4

创建多维数组:

  1. <!DOCTYPE html>
  2. <html>
  3. <body>
  4. <?php
  5. // 二维数组:
  6. $cars=array
  7. (
  8. array("Volvo",100,96),
  9. array("BMW",60,59),
  10. array("Toyota",110,100)
  11. );
  12. echo $cars[0][0].": Ordered: ".$cars[0][1].". Sold: ".$cars[0][2]."<br>";
  13. echo $cars[1][0].": Ordered: ".$cars[1][1].". Sold: ".$cars[1][2]."<br>";
  14. echo $cars[2][0].": Ordered: ".$cars[2][1].". Sold: ".$cars[2][2]."<br>";
  15. ?>
  16. </body>
  17. </html>

分类导航