条件语句 (if-else, switch)
概述
在编程中,条件语句用于根据不同的条件执行不同的代码块。PHP 提供了多种条件语句,包括 if-else 和 switch。这些语句允许你根据变量的值或其他条件来决定程序的执行路径。
1. if 语句
if 语句是最基本的条件语句,用于在条件为真时执行一段代码。
语法
if (条件) {
// 条件为真时执行的代码
}
示例
$age = 18;
if ($age >= 18) {
echo "你已经成年了。";
}
解释
if后面的括号内是一个条件表达式。- 如果条件表达式的值为
true,则执行大括号{}内的代码。 - 如果条件表达式的值为
false,则跳过大括号内的代码,继续执行后续代码。
2. if-else 语句
if-else 语句在 if 语句的基础上增加了 else 分支,用于在条件为假时执行另一段代码。
语法
if (条件) {
// 条件为真时执行的代码
} else {
// 条件为假时执行的代码
}
示例
$age = 15;
if ($age >= 18) {
echo "你已经成年了。";
} else {
echo "你还未成年。";
}
解释
- 如果
if语句中的条件为true,则执行if分支的代码。 - 如果
if语句中的条件为false,则执行else分支的代码。
3. if-elseif-else 语句
if-elseif-else 语句用于处理多个条件的情况。你可以使用多个 elseif 分支来检查不同的条件。
语法
if (条件1) {
// 条件1为真时执行的代码
} elseif (条件2) {
// 条件2为真时执行的代码
} else {
// 所有条件都为假时执行的代码
}
示例
$score = 85;
if ($score >= 90) {
echo "优秀";
} elseif ($score >= 80) {
echo "良好";
} elseif ($score >= 60) {
echo "及格";
} else {
echo "不及格";
}
解释
if语句首先检查条件1。- 如果条件1为
true,则执行if分支的代码,并跳过后续的elseif和else分支。 - 如果条件1为
false,则继续检查条件2。 - 如果条件2为
true,则执行elseif分支的代码,并跳过后续的else分支。 - 如果所有条件都为
false,则执行else分支的代码。
4. switch 语句
switch 语句用于根据变量的值执行不同的代码块。它比多个 if-elseif-else 语句更简洁。
语法
switch (变量) {
case 值1:
// 变量等于值1时执行的代码
break;
case 值2:
// 变量等于值2时执行的代码
break;
default:
// 变量不等于任何值时执行的代码
}
示例
$day = "Monday";
switch ($day) {
case "Monday":
echo "今天是星期一";
break;
case "Tuesday":
echo "今天是星期二";
break;
default:
echo "今天不是星期一或星期二";
}
解释
switch语句根据变量的值来选择执行哪个case分支。- 如果变量的值与某个
case的值匹配,则执行该case分支的代码。 break语句用于跳出switch语句,防止继续执行后续的case分支。default分支用于处理变量不匹配任何case的情况。
5. 实践练习
练习1:判断年龄段
编写一个 PHP 程序,根据用户的年龄输出不同的信息:
- 如果年龄小于 18 岁,输出 "你还未成年"。
- 如果年龄在 18 到 60 岁之间,输出 "你已经成年"。
- 如果年龄大于 60 岁,输出 "你已经退休"。
练习2:判断星期几
编写一个 PHP 程序,根据用户输入的星期几(如 "Monday", "Tuesday" 等)输出不同的问候语。
练习3:计算成绩等级
编写一个 PHP 程序,根据用户的考试成绩输出成绩等级:
- 90 分以上为 "优秀"。
- 80 到 89 分为 "良好"。
- 60 到 79 分为 "及格"。
- 60 分以下为 "不及格"。
总结
条件语句是编程中非常重要的工具,它们允许你根据不同的条件执行不同的代码块。通过 if-else 和 switch 语句,你可以灵活地控制程序的执行流程。希望本教程能帮助你更好地理解和使用这些条件语句。