通过这个问题我的意思是,如果,例如,某人的用户名是“bob”那么while循环条件将是($ i <10),如果用户名是其他东西那么while循环条件将是($ i> 10)
if($username == "bob")
{
//make this while loop condition: ($i < 10)
// it means: while($i <10){ so stuff}
}
else
{
//make the while loop condition: ($i >10)
}
答案 0 :(得分:4)
使do_stuff
成为一个函数,然后这是完全可读的(虽然特殊套管'bob'似乎最好是可疑的。)
if($username == "bob")
{
while($i<10) {
do_stuff();
}
}
else
{
while($i>10) {
do_stuff();
}
}
答案 1 :(得分:2)
while( ($username == 'bob' && $i <10 ) XOR $i > 10){}
$username == 'bob'
将首先评估true
,然后评估$i < 10
。
$var1 XOR $var2
中有一个true
而非$var1, $var2
时,{p> true
才会{{1}}。
但我自己会选择this。
答案 2 :(得分:0)
尝试在if和else块中创建两个不同的while循环。
答案 3 :(得分:0)
if($username == "bob")
{
//make this while loop condition: ($i < 10)
// it means: while($i <10){ so stuff}
while ($i < 10) {
call_method();
}
}
else
{
while ($i > 10) {
call_method();
}
}
答案 4 :(得分:0)
保持代码简单:
if($ username ==“bob”) { while($ i&lt; 10){ }
} 其他 { while($ i&gt; 10){ }
}
还有其他更好的方法来处理它,但它们可能会让您的代码难以理解,就像使用我不喜欢的eval一样。