一:顺序结构
二:分支结构(条件结构,选择结构)
1.单路分支:
//条件:bool,true或false,> < == != & || ! isset()
if(条件)
执行下面一条语句
if(条件)
{
代码段:
代码段:
}
例子:
代码:
$a=10;
$b=5;
if($a > $b)
echo “$a是大于$b的”;
2.双路分支:
使用else语句
if(条件)
执行一条语句
else
执行一条语句
if(条件){
一条或多条代码
}else{
一条或多条代码
}
例子:
代码:
$a=10;
$b=20;
if($a > $b){
echo “$a大于$b
”;
}else{
echo “$a小于$b
”;
}
3.多路分支:
可以使用 if else if 和swich case
//这是一种互斥的关系
if(条件){
}elseif(条件){
}elseif(条件){
}elseif(条件){
}else{
}
switch(变量){
case 值:
代码:
break;
case 值1:
代码;
break;
default;
}
例子:
代码:
$hour=date(“H”);
if($hour > 6 && $hour < 9){
echo “早上好”;
}elseif($hour > 9 && $hour < 12){
echo “上午好”;
}elseif($hour > 12 && $hour < 14){
echo “中午好”;
}elseif($hour > 14 && $hour < 17){
echo “下午好”;
}elseif($hour > 17 && $hour < 19){
echo “傍晚好”;
}elseif($hour > 19 && $hour < 22){
echo “晚上好”;
}elseif($hour > 22 && $hour < 24){
echo “深夜好”;
}else{
echo “凌晨好”;
}
以上代码也可以写成
$hour=date(“H”); //因为有互斥关系,当执行到正确代码时,就不会执行下一段代码。
if($hour < 6){
echo “凌晨好”;
}
if($hour < 9){
echo “早上好”;
}elseif($hour < 12){
echo “上午好”;
}elseif($hour < 14){
echo “中午好”;
}elseif($hour < 17){
echo “下午好”;
}elseif($hour < 19){
echo “傍晚好”;
}elseif($hour < 22){
echo “晚上好”;
}elseif($hour < 24){
echo “深夜好”;
}else{
echo “您好”;
}
例子:
代码:
$week=date(“D”);
//switch(变量) 这里的变量只使用整型和字符串
//default 如果变量没有匹配的值,则执行default中的区域
//break 是退出switch语句,用来设置多个值匹配执行同一段代码
switch($week){
case “Mon”:
echo “星期一”;
break;
case “Tue”:
echo “星期二”;
break;
case “Wed”:
echo “星期三”;
break;
case “Thu”:
echo “星期四”;
break;
case “Fri”:
echo “星期五”;
break;
default:
echo “周末”;
}
如果是判断一段范围我们使用elseif
如果是单个值我们使用switch
4.嵌套分支:
if(){
if(){
}else{
if(){
}else{
}
}
}else{
if(){
}else{
switch(){
}
}
}
例子:
代码:
$sex=$_GET["sex"];
$age=$_GET["age"];
if($sex=”man”){
if($age >= 60){
echo “这位男士已经退休,他退休”.($age-60).”年了”;
}else{
echo “这位男士还在工作,还有”.(60-$age).”年退休”;
}
}else{
if($age >= 55){
echo “这位女士已经退休了,她退休”.($age-55).”年了”;
}else{
echo “这位女士还在工作,还有”.(55-$age).”年退休”;
}
}
//以上代码用了GET,所以访问的话是 ?sex=man&age=33