PHP中if…elseif…else用于多分支条件判断,按顺序执行首个为真的分支,推荐连写elseif而非else if,注意条件顺序与严格比较以避免隐式转换错误。

PHP 中的 if...elseif...else 是最常用的多分支条件判断结构,用来根据不同的条件执行不同的代码块。
基本语法结构
它按顺序检查每个条件,一旦某个条件为真(true),就执行对应的代码块,并跳过后续所有分支;如果所有条件都不满足,则执行 else 后的代码(如果有)。
写法如下:
if ($condition1) {
// 条件1为真时执行
} elseif ($condition2) {
// 条件1为假、条件2为真时执行
} elseif ($condition3) {
// 前两个都为假、条件3为真时执行
} else {
// 所有条件都不满足时执行
}
登录后复制
注意 elseif 的写法和大小写
elseif 是一个关键字,不能写成 else if(虽然 PHP 也兼容,但官方推荐连写,避免与嵌套 if 混淆)。
立即学习“PHP免费学习笔记(深入)”;
- ✅ 推荐:
elseif ($a > 5) - ⚠️ 可用但不推荐:
else if ($a > 5)(可能在某些风格下引发歧义) - ❌ 错误:
else if中间有空格且后面跟大括号(易被误解为嵌套)
条件判断的常见写法和技巧
每个条件表达式返回布尔值,但 PHP 会自动进行类型转换。实际开发中常这样用:
- 判断变量是否存在且非空:
if ($name)(等价于!empty($name),但要注意0、"0"、false、null也会被当作假) - 严格比较更安全:
if ($status === 'active')避免类型隐式转换带来的意外 - 多个条件组合:
if ($age >= 18 && $age 或 <code>if (in_array($role, ['admin', 'editor']))
实际小例子
根据分数输出等级:
$score = 85;
if ($score >= 90) {
echo "优秀";
} elseif ($score >= 80) {
echo "良好";
} elseif ($score >= 70) {
echo "中等";
} elseif ($score >= 60) {
echo "及格";
} else {
echo "不及格";
}
// 输出:良好
登录后复制
注意:条件顺序很重要——必须从高到低或按逻辑优先级排列,否则低分条件可能提前“截断”判断。
基本上就这些。写清楚逻辑、注意条件顺序和比较方式,if...elseif...else 就很实用也不容易出错。
以上就是php中if…elseif…else判断条件的详细内容,更多请关注php中文网其它相关文章!


