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

php中的无限循环,将变量从foo更改为bar,从bar更改为foo,php,Php,所以我有一个非常愚蠢的问题。 我试图用php编写一个无限循环,不断地将变量$variable=foo更改为$variable=bar。在变量=bar之后,如果$number可被20整除,它将检测并永远将其更改回foo。 这是我到目前为止所拥有的,我把它限制在100次以内,但我怎样才能让它永远持续下去呢?它还仅将foo更改为bar,并为循环的其余部分保留$variable=bar。我想我走错地方了?还是我需要在某个地方继续。 谢谢 $variable=“foo”; 对于($number=0;$nu

所以我有一个非常愚蠢的问题。 我试图用php编写一个无限循环,不断地将变量$variable=foo更改为$variable=bar。在变量=bar之后,如果$number可被20整除,它将检测并永远将其更改回foo。 这是我到目前为止所拥有的,我把它限制在100次以内,但我怎样才能让它永远持续下去呢?它还仅将foo更改为bar,并为循环的其余部分保留$variable=bar。我想我走错地方了?还是我需要在某个地方继续。 谢谢

$variable=“foo”;
对于($number=0;$number<100;$number++)
{
echo$变量;
如果($number%20==0&&$number>0){
回显“\n可被20个变化变量整除”;
如果($variable=“foo”){
$variable=“bar”;
echo“,$number\n”;
}
如果($variable=“bar”){
$variable=“foo”;
echo“,$number\n”;
}
继续;
}否则{
回显“\n无更改”;
}
}
试试看


在获得无限循环的基本级别上,您可以做以下几件事:

  • 您可以使用
    while(true)
    循环
  • 对于($number=0;$number!=$number-1;$number++),可以使用断开的for循环
    for($number=0;$number!=$number-1;$number++)
  • 第一个循环的
    true
    值保持不变,因此只要不重新定义
    true
    在循环中的含义,就应该可以了

    第二种方法依赖于
    $number
    永远不等于
    $number-1
    ,因此只需不断增加
    $number
    ,我以前见过的另一种方法是完全忽略初始化和条件

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

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

    无需进一步挖掘代码,这很可能不是您想要的:
    如果($variable=“foo”)
    -您想使用
    ==
    ,对吗?另一个
    if
    也一样。另外,绝对不需要
    $number>0
    ,因为您知道
    $number
    将始终至少为0。对于您的循环:
    while($continue){/*…*/}
    其中
    $continue
    应该是
    true
    ,只要您希望循环继续。是否继续。没有“尝试”。一个好的答案总会有一个解释,说明做了什么以及为什么这样做,不仅是为了OP,也是为了SO的未来访客。对不起,这并没有改变任何不同。变量始终为foo且从不更改为bar。如何重新定义
    true
    的含义?您(或OP)想要的是在这里使用一个布尔变量,这样您就可以以某种方式打破循环。
    $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")
    
    for (;;) {
        print 'loop!';
    }