PHP流程控制分支结构

1.顺序结构

2.分支结构(条件结构、选择结构)

(1)单路分支

//条件bool,ture或false

if(条件){

执行语句;

}

<?php
1 $a=10; 2 $b=50; 3 if ($a<$b) { 4 $t=$a; 5 $a=$b; 6 $b=$t; 7 } 8 var_dump($a > $b);
?>

(2)双路分支

使用else从句

if (条件) {

执行语句;

} else {

执行语句;

}

 1 <?php
 2 $a=10;
 3 $b=20;
 4 
 5 if ($a > $b) {
 6     echo "$a 大于 $b<br>";
 7 } else {
 8     echo "$a 小于 $b<br>";
 9 }
10 
11 ?>

(3)多路分支

可以使用if else if和switch case

//这是一种互斥的关系

if (条件) {

# code...

} else if(条件){

# code...

}else if(条件){

}else{

}

 1 <?php
 2 $hour=date("H");
 3 
 4 if($hour > 6 && $hour < 9){
 5     echo "早上好!";
 6 }else if($hour > 9 && $hour < 12){
 7     echo "上午好!";
 8 
 9 }else if($hour > 12 && $hour <14){
10     echo "中午好!";
11 }else  if($hour > 14 && $hour < 18){
12     echo "下午好";
13 }else{
14     echo "晚上好!";
15 }

switch (变量) {

case '值':

# code...

break;

case '值':

# code...

break;

default:

# code...

break;

}

 1 <?php
 2 $week=date("D");
3 //switch(变量) 变量只能是整型或字符串 4 switch($week){ 5 case 'Mon': 6 echo "星期一"; 7 break; 8 case 'Tue': 9 echo "星期二"; 10 break; 11 case 'Web': 12 echo "星期三"; 13 break; 14 case 'Thu': 15 echo "星期四"; 16 break; 17 case 'Fri': 18 echo "星期五"; 19 break; 20 default: 21 echo "星期天"; 22 break; 23 } 24 ?>
如果是判断一段范围,使用else if

如果是单个值的匹配,使用switch

(4)嵌套分支

if (条件) {

if (条件) {

# code...

} else {

# code...

}

} else {

# code...

}

 1 <?php
 2 $sex=$_GET["sex"];
 3 $age=$_GET["age"];
 4 if($sex=="nan"){
 5     if($age>=60){
 6         echo "这个男士$sex已经退休".($age-60)."年了<br>";
 7         }
 8     else{
 9         echo "这个男士还在工作,还有".(60-$age)."年才退休<br>";        
10     }
11 }
12 else{
13     if($age>=55){
14         echo "这个女士$sex已经退休".($age-55)."年了<br>";
15         }
16     else{
17         echo "这个女士还在工作,还有".(55-$age)."年才退休<br>";        
18     }
19 }
20 ?>