PHP中声明二维数组有五种方法:一、用array()函数嵌套;二、PHP5.4+用[]短语法;三、先声明空数组再逐行赋值;四、用循环配合array_push()构建;五、用字符串键名定义关联二维数组。

在 PHP 中,声明二维数组通常通过嵌套数组的方式实现,即数组的每个元素本身也是一个数组。以下是几种常见的初始化方法:
一、使用 array() 函数嵌套声明
这是最基础且兼容性最强的方式,适用于所有 PHP 版本,通过在外层数组中直接嵌套内层数组来构造二维结构。
1、使用传统 array() 语法逐层定义外层数组和内层数组。
2、每个内层数组作为外层数组的一个值,用逗号分隔。
立即学习“PHP免费学习笔记(深入)”;
3、例如:$arr = array(array(1, 2), array(3, 4), array(5, 6));
二、使用方括号 [] 语法初始化(PHP 5.4+)
自 PHP 5.4 起支持短数组语法,书写更简洁,语义更清晰,是当前推荐的声明方式。
1、外层数组使用一对方括号,内部每个元素为一个独立的数组字面量。
2、每个内层数组也使用方括号包裹其元素,并以逗号分隔。
3、例如:$arr = [[1, 2], [3, 4], [5, 6]];
三、先声明空数组再逐行赋值
适用于运行时动态构建二维数组的场景,允许按需填充行与列,灵活性高。
1、先用 $arr = []; 声明一个空数组。
2、使用索引方式为每一行分配一个新数组:$arr[0] = [1, 2];
3、继续为后续行赋值:$arr[1] = [3, 4]; $arr[2] = [5, 6];
四、使用循环配合 array_push() 构建
适合从数据源(如数据库结果集或外部输入)批量生成二维结构,增强可读性与可控性。
1、初始化空数组:$arr = [];
2、准备待插入的子数组,例如 $row = [7, 8];
3、调用 array_push($arr, $row); 将子数组追加到外层数组末尾。
五、键名显式声明的关联二维数组
当需要语义化行标识(如用户ID、分类名等)而非数字索引时,可使用字符串键名进行结构化定义。
1、外层数组键名为有意义的字符串,对应值为内层数组。
2、内层数组同样支持数字或字符串键名,例如:$users = ['admin' => ['id' => 1, 'name' => 'Alice'], 'guest' => ['id' => 2, 'name' => 'Bob']];











