PHP 流程控制7
PHP if ... else
PHP 流程控制主要是 if 和 switch 流程控制。
if
if 流程控制允许按照条件执行代码片段。if 流程控制分为三类:
if
if…else
elseif
if
语法:
if (expr){
statement
}
例子:
<?php
if ($x > $y)
echo "x 大于 y";
?>
if…else
语法:
if (expr){
statement1
} else {
statement2
}
它表示只要 expr 成立,则执行 statement1 ,否则执行 statement2 。
例子:
<?php
if ($x > $y)
echo "x 大于 y";
} else {
echo "x 小于等于 y";
}
?>
elseif
语法:
if (expr){
statement1
} elseif (expr2) {
statement2
} else {
statement3
}
它表示只要 expr1 成立,则执行 statement1 ,否则检测 expr2 ,如果 expr2 成立则执行 statement2 。如果 expr2 也不成立,则执行 statement3 。
例子:
<?php
if ($x > $y) {
echo "x 大于 y";
} elseif ($x == $x) {
echo "x 等于 y";
} else {
echo "x 小于 y";
}
?>
提示
elseif 可以有多个,以实现更多条件的选择,但多数情况下,条件更多时,我们可以选择switch来实现。
PHP switch
switch
switch允许对一个标量(表达式)的多个可能结果做选择。
语法:
switch (expr) {
case result1:
statement1
break;
case result2:
statement2
break;
……
default:
statement
}
系统计算expr的值,根据计算结果(result1、result2等)来选择下面对应执行语句,如果所有的case结果都不符合,则会执行default里的语句。
例子:
<?php
switch ($x) {
case 0:
echo "x 等于 0";
break;
case 1:
echo "x 等于 1";
break;
case 2:
echo "x 等于 2";
break;
default:
echo "x 既不等于1和2,也不等于0";
}
?>
提示
可以有多个 case 条件判断
case 后面结果也不是仅限于数字,也可以是字符或其他 PHP 支持的类型
default 不是必须的