所以我有一个非常愚蠢的问题。 我在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";
}
}
答案 0 :(得分:1)
在基本级别获得无限循环,你可以做几件事:
while(true)
循环。for ($number = 0; $number != $number-1; $number++)
第一个循环而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")