分支结构
单一分支结构(if)
<?php
//单一分支结构
if($boolean){//如果if后只有一行语句的话,大括号{...}可以不写
echo "true";
}
?>
双向条件分支结构(else从句)
<?php
//双向条件分支结构
if($boolean){
echo "true";
}else{
echo "false";
}
?>
多向条件分支结构(elseif子句,switch语句)
//多向条件分支结构
//注意:在这种多路分支中,只能进入一个
<?php
if($boolean){
echo "true";
}elseif($boolean1){
echo "true1";
}elseif($boolean2){
echo "true2";
}.....else{
echo "false";
}
//switch()中只能是变量
switch(表达式){
case 值1:语句序列1;
break;
case 值2:语句序列2;
break;
...
default:
语句序列 n;
break;
}
?>
巢状条件分支结构
//巢状条件分支结构
//注:尽量不能超过三层或五层
<?php
if(){
if(){
if(){
}else{
}
}else{
}
}else{
}
?>
循环结构
while语句
语法:
while(表达式){语句或语句序列}
注释
当循环语句中的表达式(循环控制语句)的结构为真时,程序将反复执行同一段程序:循环体(while 中的语句或语句序列),知道满足一定条件(表达式的结果为假时)后才停止执行这段程序
例子
<?php
//求1到100的累加
$i = 1;
$sum = 0;
while($i<=100){
$sum += $i;
$i++;
}
echo $sum;
do…while循环
语法:
do{语句或语句序列}while(表达式)
注释
程序会执行 do 语句体中的语句(循环体),然后再检查表达式(循环控制语句)的值,如果符合条件(值为真),就再进行do语句体中的语句,直到条件不符合为止
注意
do-while
后面必须加上分后作为结束do-while
与do-while
的最大区别是先执行循环体然后再判断循环的控制条件
例子
<?php
//求1到100的累加
$i = 1;
$sum = 0;
do{
$sum += $i;
$i++;
}while($i<=100);
echo $sum;
?>
for语句
for(表达式1;表达式2;表达式3){语句或语句序列}
注释
for 循环语句中表达式1为循环初始条件; 表达式2为循环控制条件; 表达式3为控制变量递增; 语句或语句序列为循环体
例子
<?php
for($i=1;$i<=10;$i++){
echo "这是第<b>{$i}</b>次循环执行输出的结果<br>";
}
//将for语句中第一部分初始化提出来,放到for前面执行,但for语句中的分号要保留
$i = 1;
for(;$i<=10;$i++){
echo "这是第<b>{$i}</b>次循环执行输出的结果<br>";
}
//再将第三部分的增量提出来,放到for语句的执行体最后,但也要将分号保留
$i = 1;
for(;$i<=10;){
echo "这是第<b>{$i}</b>次循环执行输出的结果<br>";
$i++;
}
$i = 1;
for(;;){
if($>10){
break;
}
echo "这是第<b>{$i}</b>次循环执行输出的结果<br>";
$i++;
}
goto语句
例子
<?php
$a=1;
$b=2;
if( $a>$b )
goto big;
else
goto small;
big:{
echo 'big';
}
small:{
echo 'small';
}
特殊的流程控制语句
<?php
while(表达式){
语句或语句序列
...
}
当while循环语句中表达式(循环控制语句)为真时,
程序将反复执行同一段程序,循环体(while中的语句或语句序列),
直到满足一定的条件(表达式的结果为假时)后才停止执行该段程序
do{
语句或语句序列
... ...
}while(表达式);
程序会先执行do语句体中的语句(循环体),
然后再检查表达式的值,如果值为真,就再进行do语句体中的语句,
直到条件不符合为止
特殊流程控制语句
1.break:使程序离开该层循环
2.continue:使程序略过后面的语句,直接执行下一次的循环动作
3.exit:退出当前脚本。exit()是一个函数,die()是它的别名。可以带参数输出一条消息,并退出当前脚本