PHP入门很轻松(微课超值版)
上QQ阅读APP看书,第一时间看更新

2.6.1 条件控制结构

条件控制语句中包含两个主要的语句,一个是if语句,另一个是switch语句。

1.单一条件分支结构(if语句)

if语句是最为常见的条件控制语句,它的语法格式如下:

这种形式只是对一个条件进行判断。如果条件成立,就执行命令语句,否则不执行。

if语句的流程控制图如图2-19所示。

【例2-19】判断随机数是否是奇数(实例文件:源文件\ch02\2.19.php)。

运行结果如图2-20所示。

图2-19 if语句流程控制图

图2-20 if语句

2.双向条件分支结构(if…else语句)

如果是非此即彼的条件判断,可以使用if…else语句。它的语法格式如下:

这种结构形式首先判断条件是否为真,如果为真,就执行命令语句A,否则执行命令语句B。

if…else语句的流程控制图如图2-21所示。

【例2-20】判断随机数是奇数还是偶数(实例文件:源文件\ch02\2.20.php)。

运行结果如图2-22所示。

图2-21 ifelse语句流程控制图

图2-22 ifelse语句

3.多向条件分支结构(elseif语句)

在条件控制结构中,有时会出现多种选择,此时可以使用elseif语句。它的语法格式如下:

elseif语句的流程控制图如图2-23所示。

图2-23 elseif语句流程控制图

【例2-21】判断成绩的等级(实例文件:源文件\ch02\2.21.php)。

运行结果如图2-24所示。

图2-24 elseif语句

4.多向条件分支结构(switch语句)

switch语句的结构给出不同情况下可能执行的程序块,条件满足哪个程序块,就执行哪条语句。它的语法格式如下:

其中,若“条件判断语句”的结果符合某个“可能判断结果”,就执行其对应的“命令执行语句”。如果都不符合,则执行default对应的默认项的“命令执行语句”。

switch语句的流程控制图如图2-25所示。

图2-25 switch语句流程控制图

【例2-22】使用switch语句(实例文件:源文件\ch02\2.22.php)。

运行结果如图2-26所示。首先定义一个变量$fruit,值为“苹果”,把$fruit传入switch语句中,然后进行匹配,若匹配到则执行相应代码,若匹配不到则执行default。

图2-26 switch语句

大牛提醒

switch语句与elseif语句都可以进行多重选择,但是在不同的情况下运行的效率是不一样的。当被判断的值为常量(固定不变的值)时,switch语句的运行效率高于elseif语句;当被判断的值为变量时,elseif语句的运行效率高于switch语句。