首页 > 解决方案 > php foreach 只是在数组的一个值上循环

问题描述

这是我的代码:

$bag3 = 7;
$row = 4;
$nom = 1;
$arr = array("red", "green", "blue", "yellow");
while ($bag3){
while ($nom <= $bag3){
    echo $ay." ".$row;
    $nom++;
    $row++;
}if ($nom == $bag3){
    $nom = 1;
}
}

这是输出:

red 4red 5red 6red 7red 8red 9red 10 

我希望它遍历所有数组值:redgreenblueyellow. 像这样:

red 4red 5red 6red 7red 8red 9red 10green 11green 12green 13green 14green 15green 16green 17blue 18blue 19blue 20blue 21blue 22blue 23blue 24yellow 25yellow 26yellow 27yellow 28yellow 29yellow 30yellow 31

我应该在我的代码中更改什么?

标签: phpforeach

解决方案


foreach您可以通过数组上的for循环和$nom从 1 到的循环来简化代码$bag3

$bag3 = 7;
$row = 4;
$arr = array("red", "green", "blue", "yellow");
foreach ($arr as $ay) {
    for ($nom = 1; $nom <= $bag3; $nom++, $row++){
        echo $ay." ".$row;
    }
}

输出:

red 4red 5red 6red 7red 8red 9red 10green 11green 12green 13green 14green 15green 16green 17blue 18blue 19blue 20blue 21blue 22blue 23blue 24yellow 25yellow 26yellow 27yellow 28yellow 29yellow 30yellow 31

3v4l.org 上的演示


推荐阅读