第5章 PHP中的流程控制语句
烟台南山
软件工程
本章主要内容
? ? ? ? ?
PHP中的if判断 PHP中的switch…case判断 PHP中的while循环 PHP中的for循环 流程控制综合运用实例
第5章 PHP中的流程控制
if…else判断
?
if…else判断语句有以下3种形式:
? ? ?
简单的if判断 除了if之外,加上了else分支 递归的if…elseif…else多重判断,通常用在多种决 策判断中
第5章 PHP中的流程控制
?
简单的if判断
?
基本格式: if(expr) { statement }
?
?
只对判断结果为真时执行操作
如果statement语句只有一句,可省略大括号
100) echo "太贵了,不买!"; ?>
$val2) { echo “因为val1=”.$val1.“,"; echo “而val2=" .$val2."
"; echo “所以val1大于val2"."
"; } ?>
第5章 PHP中的流程控制
?
if…else判断
?
?
基本格式:if(expr) { statement } else { statement } 判断结果为真时执行if语句,为假时执行else语句
100) echo "太贵了,不买!"; else echo "还挺便宜的,就买它吧!"; ?>
第5章 PHP中的流程控制
?
if…elseif…else多重判断
?
?
基本格式:if(expr) { statement } elseif(expr) { statement } … else { statement } 递归的if…elseif…else多重判断,通
常用在多种决策判断中。
$val2) echo "val1大于val2"."
"; elseif($val1==$val2) echo "val1等于val2"."
"; else echo "val1小于val2"; ?>
第5章 PHP中的流程控制
switch…case多重判断
?
switch循环用于把同一个变量或表达式与很多不同的值 比较,并根据其值来执行不同的代码的情况。格式为:
switch(expr){ case expr1: case expr2: … default: } statement1; break; statement2; break; statement n; break;
?
expr通常是变量名,case后的exprN通常为变量的值, statementN为符合该值时执行的语句,语句超过一条也 无需加大括号。使用break跳出过程。
第5章 PHP中的流程控制
练习:请将本程序 改写成if…else语句。 比较他们的优缺点。
第5章 PHP中的流程控制
while循环
?
while循环用来在指定的条件内,不断地重复步 骤。格式:while(expr) { statement }
?
如果程序只有一行,则可以省略大括号“{}”。多行情 况也可以不用大括号,单末尾要使用endwhile结束。
"; $i++; } ?> "; $i=1; while($i<=10): print $i; $i++; endwhile; print " "; ?>
第5章 PHP中的流程控制
使用break跳出循环
?
break负责结束当前for、foreach、while、 do…while或者switch结构的执行。
"; break; echo "
"; case 8: $i++; print "当前i的值为8.
"; break 2; if($i==9) default: break; echo "当前i的值不是4和8.
"; } break; ?> }} ?>
第5章
PHP中的流程控制
使用continue语句
?
continue用来跳过本次循环中剩余的代码并开
始执行下一次循环。
"; while(1){ echo "&;nbsp;&;nbsp;Middle
"; while(1){ echo "&;nbsp;&;nbsp;Inner
"; continue 3; //改为2行吗?1呢? } //break 2;呢 echo "This never gets output.
"; } echo "Neither does this.
"; } ?>
"; } ?>
第5章 PHP中的流程控制
do…while循环
?
do…while循环和while循环非常相似。区别在于 表达式的值是在每次循环结束时检查而不是开始 时。格式为:do{ statement }while(expr