创建二维数组
本课属于 Coddy PHP 学习旅程的“逻辑与流程”单元。第 27 课,共 68 课。
多维数组就是一个以其他数组作为元素的数组。最常见的是二维数组,你可以把它想象成一个有行和列的网格,类似于电子表格或游戏棋盘。
在 PHP 中创建二维数组很简单。你可以创建一个数组,其中的每个元素本身都是一个数组:
<?php
$gameBoard = [
["", "", ""],
["", "", ""],
["", "", ""]
];
?>这会创建一个 3x3 网格,其中每个内部数组表示一行,每个数组中的元素表示一列。你也可以创建包含不同数据类型的二维数组:
<?php
$scores = [
[85, 92, 78],
[90, 88, 95],
[76, 84, 89]
];
?>PHP 还提供了一个名为 array_fill() 的内置函数,可以让你快速创建一个填充了指定值的数组。它接受三个参数:起始索引、元素数量和要填充的值:
<?php
// array_fill(start_index, num_elements, value)
$row = array_fill(0, 3, 0); // [0, 0, 0]
?>你可以将 array_fill() 与自身结合,高效地构建二维数组。例如,创建一个 3x3 的网格,让每个单元格都从 0 开始:
<?php
$grid = array_fill(0, 3, array_fill(0, 3, 0));
// 结果:一个 3x3 数组,其中每个元素都是 0。
?>多维数组非常适合组织结构化数据,例如游戏棋盘、信息表格,或任何需要用网格形式表示数据的场景。它们为处理相关信息的行和列提供了一种自然的方式。
挑战
简单你将收到 3 个输入,表示二维数组的维度和初始值:行数、列数,以及用于填充每个位置的值。读取这些输入,创建指定维度的二维数组,并将每个元素设为给定的值,然后使用 print_r() 打印数组。
输入格式:
- 第一行:行数(整数)
- 第二行:列数(整数)
- 第三行:每个元素的初始值(字符串)
预期输出:使用 print_r() 显示创建的二维数组
亲手试试
<?php
// 读取输入
$rows = intval(fgets(STDIN));
$columns = intval(fgets(STDIN));
$value = trim(fgets(STDIN));
// TODO:在下方编写代码,创建二维数组
// 输出结果
print_r($array);
?>这节课包含一个小测验。开始学习即可作答,并记录你的进度。
逻辑与流程中的所有课
自己练习: PHP 在线编译器