PHP 数组

数组能够在单独的变量名中存储一个或多个值。


实例

数组在单个变量中存储多个值:

  1. <!DOCTYPE html>
  2. <html>
  3. <body>
  4. <?php
  5. $cars=array("保时捷","奔驰","宝马");
  6. echo "我喜欢的车是 " . $cars[0] . ", " . $cars[1] . " 和 " . $cars[2] . ".";
  7. ?>
  8. </body>
  9. </html>

什么是数组?

数组是特殊的变量,它可以同时保存一个以上的值。

如果您有一个项目列表(例如汽车品牌列表),在单个变量中存储这些品牌名称是这样的:

  1. $cars1="保时捷";
  2. $cars2="奔驰";
  3. $cars3="宝马";

不过,假如您希望对变量进行遍历并找出特定的那个值?或者如果您需要存储 300 个汽车品牌,而不是 3 个呢?

解决方法是创建数组!

数组能够在单一变量名中存储许多值,并且能够通过引用索引号来访问它的某个值。


在 PHP 中创建数组

在 PHP 中, array() 函数用于创建数组:

  1. array();

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

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

PHP 索引数组

有两种创建索引数组的方法:

索引是自动分配的(索引从 0 开始):

  1. $cars=array("porsche","BMW","Volvo");

或者也可以手动分配索引:

  1. $cars[0]="保时捷";
  2. $cars[1]="奔驰";
  3. $cars[2]="宝马";

下面的例子创建名为 $cars 的索引数组,为其分配三个元素,然后输出包含数组值的一段文本:

实例
  1. <!DOCTYPE html>
  2. <html>
  3. <body>
  4. <?php
  5. $cars=array("保时捷","奔驰","宝马");
  6. echo "我喜欢的车是 " . $cars[0] . ", " . $cars[1] . " 和 " . $cars[2] . ".";
  7. ?>
  8. </body>
  9. </html>

获得数组的长度 - count() 函数

count() 函数用于返回数组的长度(元素数):

实例
  1. <!DOCTYPE html>
  2. <html>
  3. <body>
  4. <?php
  5. $cars=array("保时捷","奔驰","宝马");
  6. echo count($cars);
  7. ?>
  8. </body>
  9. </html>

遍历索引数组

如需遍历并输出索引数组的所有值,您可以使用 for 循环,就像这样:

实例
  1. <!DOCTYPE html>
  2. <html>
  3. <body>
  4. <?php
  5. $cars=array("保时捷","奔驰","宝马");
  6. $arrlength=count($cars);
  7. for($x=0;$x<$arrlength;$x++) {
  8. echo $cars[$x];
  9. echo "<br>";
  10. }
  11. ?>
  12. </body>
  13. </html>

PHP 关联数组

关联数组是使用您分配给数组的指定键的数组。

有两种创建关联数组的方法:

  1. $age=array("Bill"=>"35","Steve"=>"37","Elon"=>"43");

或者:

  1. $age['Bill']="63";
  2. $age['Steve']="56";
  3. $age['Elon']="47";

随后可以在脚本中使用指定键:

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

遍历关联数组

如需遍历并输出关联数组的所有值,您可以使用 foreach 循环,就像这样:

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

多维数组

我们将在下一章教程中讲解多维数组


完整的 PHP 数组参考手册

如需完整的数组函数参考手册,请访问本站的 PHP 数组参考手册

该参考手册包含每个函数的简要描述、使用示例。