Php 在多维数组上使用foreach

Php 在多维数组上使用foreach,php,arrays,foreach,Php,Arrays,Foreach,我尝试在多维数组上使用foreach循环,结果发现它并没有按照我预期的方式工作。多维数组是否有foreach循环,或者其他方法 $array[0][0] = "a"; $array[0][1] = "b"; $array[0][2] = "c"; foreach($array as $a) { echo $a."<br>"; } 所需成果: 你需要两个循环。一个循环第一个数组,一个循环内部数组 foreach($array as $key) { foreach(

我尝试在多维数组上使用foreach循环,结果发现它并没有按照我预期的方式工作。多维数组是否有foreach循环,或者其他方法

$array[0][0] = "a";
$array[0][1] = "b";
$array[0][2] = "c";

foreach($array as $a) {

    echo $a."<br>";

}
所需成果:


你需要两个循环。一个循环第一个数组,一个循环内部数组

foreach($array as $key) {
   foreach($key as $val) {
       echo $val;
    }
}

尝试嵌套另一个foreach

$array[0][0] = "a";
$array[0][1] = "b";
$array[0][2] = "c";

foreach($array as $a) {
  foreach($a as $val){
    echo $val."<br>";
  }
}
$array[0][0]=“a”;
$array[0][1]=“b”;
$array[0][2]=“c”;
foreach($a数组){
外汇($a作为$val){
echo$val.“
”; } }
这是因为
$a
仍然是一个数组。如果使用
print\r()
,您将看到:

foreach($array as $a) {

    print_r($a);

}
结果:

Array
(
    [0] => a
    [1] => b
    [2] => c
)
要对抗嵌套数组,必须运行第二个
foreach()
循环以获取值:

foreach($array as $a) {

    foreach($a as $value){ // loop through second array
        echo $value . "</ br>";
    }

}
foreach($a数组){
foreach($a作为$value){//循环第二个数组
回声$value.“;
}
}

您也可以尝试以下方法:

 foreach($array[0] as $key => $value){
   echo $value . "<br>":
  }
foreach($key=>$value的数组[0]as$key){
回显$value。“
”: }
$array
在此代码中,您正在访问0,0,0的键,因此它不会打印它


$array[0]
在这段代码中,您可以很好地访问键0,1,2和值a、b和c,因为没有人提到它:

<?php
$array[0][0] = "a";
$array[0][1] = "b";
$array[0][2] = "c";


echo implode('<br>',$array[0]);

array\u walk\u recursive($array,function($v,$k){echo$v.“
”;})这一切都取决于多维数组有多少层,对吗?那么,三层需要三个环,是吗?@frosty-是的。如果您不知道层的数量,可以使用。
 foreach($array[0] as $key => $value){
   echo $value . "<br>":
  }
<?php
$array[0][0] = "a";
$array[0][1] = "b";
$array[0][2] = "c";


echo implode('<br>',$array[0]);