下面是关于“PHP简单实现二维数组赋值与遍历功能示例”的完整攻略:
下面是关于“PHP简单实现二维数组赋值与遍历功能示例”的完整攻略:
1. 什么是二维数组
在 PHP 中,二维数组是一个包含数组的数组。也就是说,一个包含 n 个数组的数组成为一个二维数组。当然,这个数组也可以包含多个一维数组,这样就形成了一个高维的数组。
2. 二维数组赋值
二维数组有多种赋值方式,我们可以在声明二维数组时直接赋值:
$arr = array(
array(1,2,3),
array(4,5,6),
array(7,8,9)
);
也可以通过追加一维数组的方式来完成赋值:
$arr = array();
$arr[] = array(1,2,3);
$arr[] = array(4,5,6);
$arr[] = array(7,8,9);
此外,我们还可以使用循环语句来实现二维数组的赋值:
$arr = array();
for ($i=0; $i<3; $i++) {
$sub_arr = array();
for ($j=1; $j<=3; $j++) {
$sub_arr[] = $i.$j;
}
$arr[] = $sub_arr;
}
3. 二维数组遍历
二维数组遍历有两种方式,分别是 for 循环和 foreach 循环。
3.1 for 循环
使用 for 循环,我们需要嵌套两层循环,分别取出每个二维数组中的元素:
for ($i=0; $i<count($arr); $i++) {
for ($j=0; $j<count($arr[$i]); $j++) {
echo $arr[$i][$j] . " ";
}
echo "<br>";
}
3.2 foreach 循环
使用 foreach 循环,我们可以直接遍历每个二维数组中的元素:
foreach ($arr as $sub_arr) {
foreach ($sub_arr as $item) {
echo $item . " ";
}
echo "<br>";
}
4. 示例说明
4.1 示例1:动态生成九九乘法表
我们可以使用双重循环,生成一个包含九九乘法表的二维数组,然后使用 for 循环打印出来:
// 动态生成二维乘法表
$arr = array();
for ($i=1; $i<=9; $i++) {
$sub_arr = array();
for ($j=1; $j<=$i; $j++) {
$sub_arr[] = "$j x $i = " . $i*$j;
}
$arr[] = $sub_arr;
}
// 打印二维乘法表
for ($i=0; $i<count($arr); $i++) {
for ($j=0; $j<count($arr[$i]); $j++) {
echo $arr[$i][$j] . " ";
}
echo "<br>";
}
4.2 示例2:动态生成班级成绩表
我们可以使用 for 循环来随机生成一个包含学生姓名和成绩的二维数组,然后使用 foreach 循环打印出来:
// 动态生成二维数组,包含学生姓名和成绩
$arr = array();
$names = array("张三","李四","王五","赵六","钱七");
for ($i=0; $i<count($names); $i++) {
$sub_arr = array();
$sub_arr["name"] = $names[$i];
$sub_arr["score"] = mt_rand(60, 100);
$arr[] = $sub_arr;
}
// 打印二维数组
foreach ($arr as $sub_arr) {
echo $sub_arr["name"] . " " . $sub_arr["score"] . "<br>";
}
以上是有关“PHP简单实现二维数组赋值与遍历功能示例”的完整攻略。
沃梦达教程
本文标题为:PHP简单实现二维数组赋值与遍历功能示例
猜你喜欢
- 让Laravel API永远返回JSON格式响应的方法示例 2022-11-14
- ThinkPHP3.2.3框架邮件发送功能图文实例详解 2023-01-08
- php网络安全session利用的小思路 2023-06-25
- PHP字符串的递增和递减示例介绍 2024-01-11
- PHP实现限制域名访问的实现代码(本地验证) 2023-05-02
- PHP实现守护进程的示例代码 2023-06-26
- php生成不重复随机数、数组的4种方法分享 2024-01-13
- JS中彻底删除JSON对象组成的数组中的元素 2023-05-02
- 详解php中生成标准uuid(guid)的方法 2023-01-08
- 如何使用PHP依赖管理工具Composer 2022-09-01