我将尝试用注释代码解释我想要实现的目标。
我想要做的是跳过if语句,如果满足条件并继续执行条件语句之外的代码。
<?php
if (i>4) {
//if this condition met skip other if statements and move on
}
if (i>7) {
//skip this
?>
<?php
move here and execute the code
?>
我知道中断,继续,结束和返回声明,但这不符合我的情况。
我希望这能解决我的问题。
答案 0 :(得分:4)
如果满足您的第一个条件并且您想要跳过其他条件,则可以使用任何标记变量,如下所示:
<?php
$flag=0;
if (i>4)
{
$flag=1;
//if this condition met skip other if statements and move on
}
if (i>7 && flag==0)
{
//skip this
?>
<?php
move here and execute the code
?>
答案 1 :(得分:3)
您可以使用goto
<?php
if (i>4)
{
//if this condition met skip other if statements and move on
goto bottom;
}
if (i>7)
{
//skip this
?>
<?php
bottom:
// move here and execute the code
// }
?>
但是再一次,留意恐龙。
答案 2 :(得分:3)
使用if-elseif-else
:
if( $i > 4 ) {
// If this condition is met, this code will be executed,
// but any other else/elseif blocks will not.
} elseif( $i > 7 ) {
// If the first condition is true, this one will be skipped.
// If the first condition is false but this one is true,
// then this code will be executed.
} else {
// This will be executed if none of the conditions are true.
}
在结构上,这应该是你正在寻找的。尽量避免任何导致意大利面条代码的内容,例如goto
,break
或continue
。
另一方面,你的条件并没有多大意义。如果$i
不大于4,它将永远不会大于7,所以第二个块永远不会被执行。
答案 3 :(得分:1)
我通常设置某种标记,例如:
<?php
if (i>4)
{
//if this condition met skip other if statements and move on
$skip=1;
}
if (i>7 && !$skip)
{
//skip this
?>
<?php
move here and execute the code
?>
答案 4 :(得分:0)
<?php
while(true)
{
if (i>4)
{
//if this condition met skip other if statements and move on
break;
}
if (i>7)
{
//this will be skipped
}
}
?>
<?php
move here and execute the code
?>