PHP 控制结构:If else、Switch Case
什么是控制结构?
代码执行可分为以下几类:
- 顺序执行 – 按代码编写的顺序执行所有代码。
- 选择执行 – 根据条件的计算结果,从多个选项中做出选择。执行的代码取决于条件的计算结果。
控制结构是一段代码,它根据设定的条件值决定程序的执行路径。
现在让我们来看一下 PHP 支持的一些控制结构。
PHP IF Else
If… then… else 是最简单的控制结构。它使用布尔逻辑评估条件。
何时使用 if… then… else
- 当您有一个代码块,并且该代码块应该仅在特定条件为真时执行
- 当您有两个选项,并且必须选择一个时。
- If… then… else if… 用于您需要选择两个以上选项,并且需要选择一个或多个选项时。
语法 if… then… else 的语法是:
<?php if (condition is true) { block one else block two } ?>
此处,
- “if (condition is true)” 是控制结构
- “block one” 是在条件为真时执行的代码
- {…else…} 是在条件为假时的回退操作
- “block two” 是在条件为假时执行的代码块
工作原理 下面的流程图说明了 if then… else 控制结构的工作原理。
让我们实际操作一下 下面的代码使用“if… then… else”来确定两个数中较大的值。
<?php $first_number = 7; $second_number = 21; if ($first_number > $second_number){ echo "$first_number is greater than $second_number"; }else{ echo "$second_number is greater than $first_number"; } ?>
输出
21 is greater than 7
PHP Switch Case
Switch… case 类似于 if then… else 控制结构。
它仅根据条件值执行单个代码块。
如果没有满足任何条件,则执行默认代码块。
它具有以下基本语法。
<?php switch(condition){ case value: //block of code to be executed break; case value2: //block of code to be executed break; default: //default block code break; } ?>
此处,
- “switch(…){…}” 是控制结构代码块
- “case value: case…” 是根据条件值执行的代码块
- “default:” 是在没有值与条件匹配时执行的代码块
工作原理
下面的流程图说明了 switch 控制结构的工作原理。
实际示例
下面的代码使用 switch 控制结构根据星期几显示消息。
<?php $today = "wednesday"; switch($today){ case "sunday": echo "pray for us sinners."; break; case "wednesday": echo "ladies night, take her out for dinner"; break; case "saturday": echo "take care as you go out tonight."; break; default: echo "have a nice day at work"; break; } ?>
输出
ladies night, take her out for dinner
摘要
- 控制结构用于控制程序的执行。
- If then… else 是当您有多个分支代码块需要根据条件值执行时。
- Switch… case 用于当您有多个代码块,并且只需要执行其中一个(根据设定的 case 值)时。