零起点php入门第7课-php语言结构(2)

这节课我们学习php的选择语句,选择语句用于使程序在不同的条件下执行不同的语句。PHP中的选择语句有if语句和switch语句。

1、if语句

™if语句也称为条件语句。它有多种使用形式,包括if形式、if…else形式和if…elseif…else形式,下面分别介绍这些形式的使用。

™if形式是if语句最基本的形式,它的语法结构如下所示:

™if (表达式)™
语句1;

™如果表达式的值为TRUE,则执行语句1,为FALSE则执行语句1之后的语句,这里的语句1可以是一个语句,也可以是一个复合语句。如果是复合语句,必须带有花括号。该结构的流程如下图所示。

if

 

我们通过下面代码来™演示if选择语句的if形式用法。

代码运行结果:两个变量中比较大的值是7。

以上代码的作用就是输出两个变量中比较大的值,如果变量y的值小于变量x,则赋值语句不会被执行。通过if语句来保证$x值永远为最大的。

2、if…else形式

if…else形式的语法结构如下所示:

if (表达式)
语句1;
else
语句2;

如果表达式的值为TRUE,则执行语句1,为FALSE则执行语句2,该结构的流程如图所示。

ifelse

代码运行结果:两个变量中比较大的值是17

由于变量y的值要大于变量x的值,因此else下的语句被执行。

3、if…elseif…else

if…elseif…else的语法结构如下所示:

if (表达式1)
语句1;
elseif(表达式2)
语句2;
else
语句3;

注意:以上语法结构中的elseif项可以有若干个,这里只列出了最基本的形式。该语法结构中的else从句是可选的。

这种结构从上到下逐个对条件进行判断,一旦条件满足或者遇到else从句就执行与相关的语句,并跳过结构中其他代码。该结构的流程图如图所示。
ifelseif

输出结果:

这是一个优秀的成绩。

当$score=59时,由于分数在0~59之间,因此第10行代码会被执行。当$score为一个大于100或者小于0的数值时,default后的语句会被执行。

4、if语句嵌套

选择语句可以嵌套,也就是在一个选择结构中存在另一个选择结构,这是经常碰到的情况,但也是容易出错的地方,原因常出现在if和else的匹配问题。PHP中的else总是会与最近的if匹配。我们首先来看一个使用正确嵌套的示例。

代码运行结果:

除数为0,计算错误!

以上代码的其他情况我们可以通过更改相应变量来查看,这里陌小雨就不做演示了。

5、switch语句

switch语句用来实现按照不同的情况执行不同的语句。switch语句常用于对变量的不同取值执行不同的语句。if…else…if形式也可以用来实现类似的功能,但是它则常用于针对变量的一个范围执行不同的语句,它的一般形式如下所示:

switch (表达式)
{
case 常量1:
语句1或空;
break;
case 常量2:
语句2或空;
break;

case 常量n:
语句n或空;
break;
default:
语句n+1或空;
}

switch语句执行时,首先计算表达式的值,并将它与每一个case后的常量进行比较。如果与某个常量相等,则执行对应的语句,遇到break语句则退出switch结构,否则就一直向下执行直到遇到break或者default。结构中的default不是必须有的,它用来匹配case情况之外的所有情况。switch语句的程序流程如图所示。

switch

以上代码中变量值为0,因此运行结果会输出变量为0的情况。

代码输出结果:星期日。

我们将代码中的week变量值设置为1后运行。

代码输出结果:星期一。星期二。

以上运行结果输出了两个星期,是因为代码中的case下的语句中没有break语句,因此程序无条件执行变量为2的情况下语句并遇到break后停止。

我们再将代码中week变量设置为3或者4后运行。

代码运行结果:星期三或者星期四。

变量为3或者4的运行情况是相同的,因为变量为3的情况下没有任何语句,因此他会无条件执行后面情况下的语句直到遇到break。

我们再将变量改为除0~5之外的任意类型值运行,这些值都会匹配default值。

代码运行结果:星期六。

下一节课,我们来学习php中的循环语句。

AD:站点文章对你有帮助,可以选择去百度口碑好评下,还可以点击此处

赞 (1) 口碑
分享到:更多 ()

评论 2

评论前必须登录!

  1. 群伟伟博客
    小雨文章那么多,我只能一天看几次[嘻嘻]