减少循环的值

时间:2011-10-28 02:51:07

标签: php arrays loops for-loop

我有这个代码,但我希望在第二个循环中减少$ p值。第一个内部循环必须重复三次,第二次,两次和最后一次,一次。我正在尝试$ p--但没有成功。

有什么想法吗?感谢

$p = 3;
for ($i = 0; $i < 3; $i++) {
     for ($o = 0; $o < $p; $o++) {
          echo "something";
          $p--;
     }
}

3 个答案:

答案 0 :(得分:3)

$p--移到内部for循环之外:

$p = 3;
for ($i = 0; $i < 3; $i++) {
     for ($o = 0; $o < $p; $o++) {
          echo "something";
     }
     $p--;
}

或者更好,只需依赖$i

的值
for ($i = 0; $i < 3; $i++) {
     for ($o = 0; $o < 3 - $i; $o++) {
          echo "something";
     }
}

或者,如果您实际上没有使用$i

for ($i = 2; $i >= 0; $i--) {
     for ($o = 0; $o < $i; $o++) {
          echo "something";
     }
}

答案 1 :(得分:2)

这很简单。

for ($i = 2; $i >= 0; $i--) 
{
}

将起始编号设置为上限编号,然后下移直到等于0,$ i减去1;

答案 2 :(得分:1)

你需要在第一个循环之外递减$ p