Php 在多维数组上使用foreach
我尝试在多维数组上使用foreach循环,结果发现它并没有按照我预期的方式工作。多维数组是否有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(
$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]);