php中的无限循环将变量从foo更改为bar,从bar更改为foo

时间:2017-02-15 16:01:32

标签: php

所以我有一个非常愚蠢的问题。 我在php中尝试编写一个无限循环,不断将变量$ variable = foo更改为$ variable = bar。在变量= bar之后,如果$ number可被20整除,它将检测并再次将其更改回foo。 这是我到目前为止所拥有的,我将其限制为100次,但我如何让它永远持续下去?它也只会将foo更改为bar并保持$ variable = bar以用于循环的其余部分。我想我还在错误的地方继续?或者我需要双重继续某处。 谢谢!

$variable = "foo";

for ($number = 0; $number < 100; $number++) 
{
    echo $variable;
    if ($number % 20 == 0 && $number > 0) {
        echo "\n Divisible by 20 Changing variable";
        if ($variable = "foo") {
            $variable = "bar";
            echo ", $number\n";
        }
         if ($variable = "bar") {
            $variable = "foo";
            echo ", $number\n";
        }


         continue; 
} else {
        echo "\n no change";

}
}

2 个答案:

答案 0 :(得分:1)

在基本级别获得无限循环,你可以做几件事:

  1. 您可以使用while(true)循环。
  2. 你可以使用一个破碎的for循环for ($number = 0; $number != $number-1; $number++)
  3. 第一个循环而true值保持不变,所以只要你不做任何重新定义循环内true意味着你应该没问题的事情

    第二个依赖于$number永远不等于$number-1,所以只是继续递增$number我之前看到的替代方法是省略初始化和条件完全

    for (;;) {
        print 'loop!';
    }
    

    虽然在您的情况下我会选择第二个,因为它允许您访问循环中的$number,然后您可以在逻辑中检查$number % 20 == 0的结果。

答案 1 :(得分:-1)

$variable = "foo";

for ($number = 0; $number < 100; $number++) 
{
    echo $variable;
    if ($number % 20 == 0 && $number > 0) {
        echo "\n Divisible by 20 Changing variable";
        if ($variable == "foo") {
            $variable = "bar";
            echo ", $number\n";
        }
         if ($variable == "bar") {
            $variable = "foo";
            echo ", $number\n";
        }


         continue; 
} else {
        echo "\n no change";

}
}

变化:

if($variable = "foo") ==> if($variable == "foo")
if($variable = "bar") ==> if($variable == "bar")