PHP5薄荷教程[7]流程控制

  程序运行流程分为三大类,分别是顺序、分支和循环。
1、条件控制语句(分支)
1)if语句,通过判断exp的真假来选择运行部分语句。它有多种类型:

if (exp) 语句; if (exp) {
语句块;
}
if (exp):
语句块;
endif;
if (exp) 语句1;
else 语句2;
if (exp) {
语句块;
} else {
语句块;
}
if (exp):
语句块;
else:
语句块;;
endif;
if (exp1) 语句1;
elseif (exp2) 语句2;
else 语句3;
if (exp1) {
语句块;
} elseif (exp2) {
语句块;
} elseif (exp3) {
语句块;
} else {
语句块;
}
if (exp1):
语句块;
elseif (exp2):
语句块;
elseif (exp3):
语句块;
else:
语句块;
endif;
补充一句:PHP的语句是以;为单位,所以分号之前可以在任意地方换行,PHP都能辨认并运行,但前提当然是要具备可读性。

   另外,还有一种特殊用法,非常的实用:
<?php
$lbl="h1";
if ($lbl=="h1"):?>
<h1>Hello, world!</h1>
<?else:?>
<h2>Hello, world!</h2>
<?endif;?>
   结果输出<h1>Hello, world!</h1>
2)switch语句,顾名思义是开关的意思,用于对exp的多种可能值进行分支。
switch (exp){
case exp1:
语句块;
break;
case exp2:
语句块;
break;
default:
语句块;
break;
}
switch (exp):
case exp1:
语句块;
break;
case exp2:
语句块;
break;
default:
语句块;
break;
endswitch;

   首先计算出exp的值,让它和各case的值进行比较,如果满足则运行该case中的语句块,并退出switch。如果都不满足,则运行default中的语句块,如果default语句省略,则不运行任何语句。另外,如果省略了break;,则在匹配了一个case后会继续比较,否则匹配一个case便会跳出switch语句。

2、循环控制语句(循环)
1)while和do-while

while (exp)
语句;
while (exp){
语句块;
}
while (exp):
语句块;
endwhile;
do
语句;
white (exp) ;
do {
语句块;
} while(exp) ;

   两者区别仅在于如果条件不为真,while可以一遍都不执行,而do-while至少会执行一遍。
2)for语句
for (exp1;exp2;exp3)
语句;
for (exp1;exp2;exp3) {
语句块;
}
for (exp1;exp2;exp3):
语句块;
endfor;

   首先在exp1进行初始化,exp2表示结束的条件,exp3则表示每循环一次要对初始化变量做的调整。如:
for ($i=1;$i<=10;$i++){
print "$i ";
}//输出1 2 3 4 5 6 7 8 9 10

4、循环控制
1)break语句:跳出当前循环。如果使用break n;则跳出n层循环,也就是说break;和break 1;是等价的。另外,前面在讲解switch时也用到了break,所以switch也应该在使用break n;的时候被记数。
$i = 0;
while (++$i) {
switch ($i) {
case 5:
echo "At 5<br />/n";
break 1; //退出switch
case 10:
echo "At 10; quitting<br />/n";
break 2; //退出while
break;
}
}
2)continue语句:跳过该次循环,进如下一次循环。同样有continue n;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值