PHP 多维数组

2025年3月26日 | 阅读 4 分钟

由数组组成的数组称为多维数组。PHP 数组中的每个元素都可以是另一个数组。如果一个数组包含具有单一标量类型的值或键值对,则该数组称为一维数组。如果数组中的每个元素都包含一个或多个标量值,则该数组称为二维数组。

PHP 数组也可以是二维关联数组,其中值是另一个关联 数组,并且外层数组的每个成员都是一个键值对。

语法

PHP 多维数组示例

让我们看一个简单的 PHP 多维数组示例,用于显示以下表格数据。在此示例中,我们显示 3 行 3 列。

ID名称薪金
1山姆400000
2John500000
3Rick300000

 

示例

立即执行

输出

1 Sam 400000
2 John 500000
3 Rick 300000

遍历二维数组

要遍历二维数组中的每个元素,需要两个 嵌套循环。对于数组遍历,foreach 循环效果很好。二维数组类似于表格形式表示的行和列数据。

1. 遍历索引二维数组

下面的示例演示了如何以表格形式复制二维数组

示例

立即执行

输出

    1    2    3    4
   10   20   30   40
  100  200  300  400

2. 遍历关联二维数组

两个堆叠的 foreach 循环也可以用于遍历二维关联数组。将外层数组的每一行解包到行键和行值变量中,然后使用内层 foreach 循环 遍历该行中的每个内容。

示例

立即执行

输出

row1
key11 => val11  key12 => val12  key13 => val13  
row2
key21 => val21  key22 => val22  key23 => val23  
row3
key31 => val31  key32 => val32  key33 => val33  

访问二维数组的元素

还可以使用 $arr[$key] 语法访问和编辑二维数组中的元素。该短语

"$arr[$i][$j]" 可用于获取和分配二维索引数组中第 i 行的第 j 个元素。

索引二维数组示例

示例

立即执行

输出

Value at [2][2]: 300

关联二维数组示例

要访问或更改二维关联数组中所需列的值,我们必须使用行键和键值 变量

示例

立即执行

输出

Value at row2 - key22 is: val22

递归遍历多维数组

如果给定键的值是另一个数组,以下代码中的 递归函数 将会调用自身。传递给此方法的任何数组都将被遍历,并且将显示其所有键值对。

函数示例

示例

让我们使用一个二维关联数组作为 showarray() 函数的参数

示例

立即执行

输出

item1 => value1  item2 => value2  item3 => value3  
item4 => value4  item5 => value5  item6 => value6  
item7 => value7  item8 => value8  item9 => value9  

下一个主题PHP 数组函数