Rumah > pembangunan bahagian belakang > masalah PHP > php如何遍历二维数组

php如何遍历二维数组

王林
Lepaskan: 2023-02-24 18:58:01
asal
9443 orang telah melayarinya

php如何遍历二维数组

官方文档中给了foreach的两种用法

foreach 语法结构提供了遍历数组的简单方式。foreach 仅能够应用于数组和对象,如果尝试应用于其他数据类型的变量,或者未初始化的变量将发出错误信息。

有两种语法:

foreach (array_expression as $value)
   statement
foreach (array_expression as $key => $value)
   statement
Salin selepas log masuk

第一种格式遍历给定的 array_expression 数组。每次循环中,当前单元的值被赋给 $value 并且数组内部的指针向前移一步(因此下一次循环中将会得到下一个单元)。

第二种格式做同样的事,只除了当前单元的键名也会在每次循环中被赋给变量 $key。

相关文章推荐:
1.什么是php二维数组?php二维数组实例详解
2.php对于二维数组的相应操作
相关视频推荐:
1.独孤九贱(4)_PHP视频教程

来看第二种,代码如下:

$a = array(
    "one" => array(1,2,3,4),
    "two" => array(5,6,7,8),
    "three" => array('a','b','c','d')
);
foreach ($a as $k => $v) {
    echo $k . &#39;<br>&#39;;
    print_r($v);
    echo &#39;<br>&#39;;
    foreach ($a[$k] as $index => $value) {
        echo $k . &#39;<br>&#39;;
        echo $index . &#39;<br>&#39;;
        echo $value . &#39;<br>&#39;;
    }
}
Salin selepas log masuk

可以看到,我们设置了一个二维数组$a,并且设置了索引,部分输出如下:

第一行:可以看到$k对应的就是第二维数组的索引,比如第一条数组的“one”

第二行:$v对应的是第二维的数组(因为不能直接用echo输出,在这里使用了print_r),比如第一条数据的array(1,2,3,4),foreach中嵌套的那一层循环中,$a[$k]表示的就是$v,这里写$a[$k]和写$v输出结果都是一样的,因为表示的也是同样的意思

第三行:$k仍旧是第二维数组的索引

第四行:$index是第二维数组数据的索引,隐式定义的,从0开始

第五行:$value是第二维数组的数据

接下来就是重复的输出了。

二位数组-1.png

可以看到foerach的确是个很强大的函数,上面是没有定义第二位数组的数据索引的情况,那如果第二位数组的数据也定义了索引呢,其实都一样,foreach语句也相同

$b=array (    &#39;0&#39; => Array ( &#39;jid&#39; => 10,&#39;j名&#39; => 10,&#39;jabstract&#39; => 10,&#39;jprovider&#39; => 10,&#39;jintroduction&#39; => &#39;厉害人物&#39;),
   &#39;1&#39; => Array ( &#39;jid&#39; => 8 ,&#39;j名&#39; => 8, &#39;jabstract&#39; => 8, &#39;jprovider&#39; => 8, &#39;jintroduction&#39; => &#39;厉害人物&#39;)
);
Salin selepas log masuk
foreach ($b as $k => $v) {
    echo $k.&#39;<br>&#39;;
    print_r($v);
    echo &#39;<br>&#39;;
    foreach ($b[$k] as $index => $value){
        echo $index.&#39;<br>&#39;;
        echo $value.&#39;<br>&#39;;
    }
}
Salin selepas log masuk

输出跟上面的也是一样的原理

二维数组-1.png

注意使用utf-8格式,要不然输出的时候会乱码。

推荐教程:PHP视频教程

Atas ialah kandungan terperinci php如何遍历二维数组. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan