【发布时间】:2021-07-15 07:42:03
【问题描述】:
<?php
$i = 0;
$j = array('U1','U2','U3','U4','U5');
while ($i <= 10) {
foreach ($j as $value) {
$i++;
echo "$i $value <br>";
}
}
?>
// 输出 1个U1 2 U2 3 U3 4 U4 5 U5 6 U1 7 U2 8 U3 9 U4 10 U5 11 U1 12 U2 13 U3 14 U4 15 U5
我希望我的循环迭代是 10 次
【问题讨论】:
-
你有两个循环:while 和 for each。因此,您运行了 10 次 foreach 循环的 5 项数组,但每次循环都会增加计数器 $i,最终结果为 15。您想在屏幕上打印什么?整个数组的 10 倍?
-
foreach第二次完成$i将是10,这使得$i <= 10为真,所以它第三次运行,使其变为15,结束while循环跨度> -
因为你在循环中添加了 $i++ ,首先是 echo 语句。所以第二次为每个完成 $i 的值为 9。将 while 语句更改为 9 它将起作用
标签: php foreach while-loop