Menu
CoddyTech

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"。

challenge icon

挑战

简单

从输入中读取两个整数: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:在下方编写你的代码
// 根据温度确定天气提示

// 根据小时数确定问候语

?>
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

基础知识中的所有课

自己练习: PHP 在线编译器