PHP 条件判断语句
程序开发中经常需要根据不同条件执行不同的代码,PHP 提供了 if else 和 switch 两种分支结构,下面分别介绍。
if else 语句
基本语法
<?php
$score = 85;
if ($score >= 90) {
echo "优秀";
} elseif ($score >= 80) {
echo "良好";
} elseif ($score >= 60) {
echo "及格";
} else {
echo "不及格";
}
?>
说明
if后面的小括号里是条件表达式,结果为true时执行对应代码块elseif可以有多个,按顺序判断,命中一个后其余不再执行else是所有条件都不满足时的兜底分支,可以省略- 如果代码块只有一条语句,可以省略大括号,但不推荐
switch 语句
基本语法
<?php
$day = 3;
switch ($day) {
case 1:
echo "星期一";
break;
case 2:
echo "星期二";
break;
case 3:
echo "星期三";
break;
default:
echo "无效的日期";
}
?>
说明
switch后的表达式会依次与每个case的值做比较,匹配后执行对应代码- 每个
case末尾必须写break,否则会继续向下执行后面的case,也就是所谓的“穿透”现象 default相当于else,所有case都不匹配时执行case的比较是宽松比较(==),需要注意0和false之类的边界情况
if else 与 switch 的选择
- 条件是范围判断(如分数区间)时用
if else - 条件是单个变量与多个固定值的匹配时用
switch,结构更清晰 - 判断条件复杂、涉及多个变量时只能用
if else
三元运算符简写
简单的二选一判断还可以用三元运算符:
<?php
$age = 20;
echo $age >= 18 ? "成年" : "未成年";
?>
掌握这两种分支语句后,就可以让程序根据不同情况执行不同逻辑了,这是后续学习循环和函数的基础。