If-Else
本课属于 Coddy PHP 学习旅程的“基础知识”单元。第 29 课,共 71 课。
有时,你需要让代码在条件为真时执行一件事,在条件为假时执行另一件事。else 子句可以让你处理这两种情况。
在 if 代码块后添加 else,指定条件为 false 时会发生什么:
<?php
$age = 15;
if ($age >= 18) {
echo "You can vote";
} else {
echo "You cannot vote yet";
}
?>由于 $age 是 15,条件为 false,因此 PHP 会运行 else 代码块,并输出 "You cannot vote yet"。
如果可能性超过两种,可以使用 elseif 链接条件:
<?php
$score = 75;
if ($score >= 90) {
echo "Grade: A";
} elseif ($score >= 80) {
echo "Grade: B";
} elseif ($score >= 70) {
echo "Grade: C";
} else {
echo "Grade: F";
}
?>PHP 会从上到下检查每个条件,并运行第一个匹配的代码块。一旦找到匹配项,它就会跳过所有剩余条件。这里,75 未通过前两项检查,但满足 $score >= 70,因此会打印 "Grade: C"。
挑战
简单从输入中读取两个整数:temperature 和 hour(采用 24 小时制,范围为 0-23)。
根据以下条件确定合适的消息:
- 如果温度低于 0,输出
Freezing conditions - 否则,如果温度低于 15,输出
Cold weather - 否则,如果温度低于 25,输出
Pleasant weather - 否则,输出
Hot weather
然后另起一行,根据小时输出问候语:
- 如果小时小于 12,输出
Good morning! - 否则,如果小时小于 18,输出
Good afternoon! - 否则,输出
Good evening!
示例:
如果输入为 20 和 9,输出应为:
Pleasant weather
Good morning!如果输入为 -5 和 14,输出应为:
Freezing conditions
Good afternoon!亲手试试
<?php
// 读取输入
$temperature = intval(fgets(STDIN));
$hour = intval(fgets(STDIN));
// TODO:在下方编写你的代码
// 根据温度确定天气提示
// 根据小时数确定问候语
?>这节课包含一个小测验。开始学习即可作答,并记录你的进度。
基础知识中的所有课
自己练习: PHP 在线编译器