在本教程之前的章节中,我们已经知道数组是一种数/值对的简单列表。
不过,有时您希望用一个以上的键存储值。
可以用多维数组进行存储。
多维数组指的是包含一个或多个数组的数组。
PHP 能理解两、三、四或五级甚至更多级的多维数组。不过,超过三级深的数组对于大多数人难于管理。
注释:数组的维度指示您需要选择元素的索引数。
两维数组是数组的数组(三维数组是数组的数组的数组)。
首先,让我们看看下面的表格:
品牌 | 库存 | 销量 |
---|---|---|
Volvo | 33 | 20 |
BMW | 17 | 15 |
Saab | 5 | 2 |
Land Rover | 15 | 11 |
我们能够在两维数组中存储上表中的数据,就像这样:
$cars = array ( array("Volvo",22,18), array("BMW",15,13), array("Saab",5,2), array("Land Rover",17,15) );
现在这个两维数组包含了四个数组,并且它有两个索引(下标):行和列。
如需访问 $cars 数组中的元素,我们必须使用两个索引(行和列):
<?php echo $cars[0][0].": 库存:".$cars[0][1].", 销量:".$cars[0][2].".<br>"; echo $cars[1][0].": 库存:".$cars[1][1].", 销量:".$cars[1][2].".<br>"; echo $cars[2][0].": 库存:".$cars[2][1].", 销量:".$cars[2][2].".<br>"; echo $cars[3][0].": 库存:".$cars[3][1].", 销量:".$cars[3][2].".<br>"; ?>
我们也可以在 For 循环中使用另一个 For 循环,来获得 $cars 数组中的元素(我们仍需使用两个索引):
<?php for ($row = 0; $row < 4; $row++) { echo "<p><b>Row number $row</b></p>"; echo "<ul>"; for ($col = 0; $col < 3; $col++) { echo "<li>".$cars[$row][$col]."</li>"; } echo "</ul>"; } ?>