PHP 有三大流程控制:顺序控制,分支控制,循环控制。
1、顺序控制:就是程序按顺序从上往下一步一步的执行。
2、分支控制:程序有选择的执行。又分单分支,多分支,多重分支。
a、单分支:基本语法结构:if(条件表达式){
语句;
//.....;
}
提示:条件表达式不管有多复杂,最终就是true或者false;
例子,a=11;
if(a>10){
echo "a>10";
}
b、多分支:基本语法:if(条件表达式){
语句;
//.....;
}else{
语句;
//.....;
}
c、多重分支:基本语法:if(条件表达式){
语句;n个语句;
}else if(条件表达式){
语句;n个语句;
}elseif(条件表达式){
语句;n个语句;
}eles{
语句;n个语句;
}
提示:1、else if 可以有一个 也可以有多个。2、最后那个else可以没有
d、switch分支语句switch(表达式){ case 常量1:
语句;n个语句;
break;
case 常量2:
语句;n个语句;
break;
case 常量3:
语句;n个语句;
break;
default:
语句;n个语句;
break;}
注意:
1、case 语句有一到多
2、defaul 语句可以没有(根据自己代码的业务逻辑)
3、通常,在case 语句后,要带break ,表示退出switch语句
4、常量的类型 (int, float, 字符串, 布尔型)
重点:程序首先按照case顺序进行配置,如果一个都没有匹配到,则执行 default语句的内容,直到遇到break,则退出switch;
if 和 switch 分支比较:
if 对某个范围的判断,而switch是对一个点的判断, 所以我们可以这样去选择他们:
应用场景: 当分支就是几个点时(比如判断坦克的方向),使用swtich。
当分支是几个区域(范围)的判断,则考虑使用if。
循环控制流程for(循环初值; 循环的条件; 步长){
//n多语句;
}while(循环条件){
//循环体 ,语句
}do{
//循环体
}while(循环条件);
我们按照正常思路应当保证接受数据的时候$_REQUEST[‘参数’]要和提交数据页面给出的html元素名字要一致。如果不一致,则会出现notice提示。同时我们接受的数据就是null,等价于””.
//$_REQUEST 该方法可以接受用户的post或者get请求数据
break与continue
循环相关的语句-break
基本的概念: 表示结束当前的 for 、 while 、do..while 、switch,流程, 可以给一个数字,表示退出到第几层.$i=0;
while(++$i){
switch($i){
case 5:
echo quit at5
;
break;
case 10:
echo quitat 10
;
break 2;
default:
break;
}
}
echo '$i='.$i;
结果是:quit at 5
quit at 10
$i=10
从上面的案例,我们得到几个结论:
1. break语句 默认跳出 1层
2. break语句后面带的数字,不能超过实际可以跳出的循环层数,否则,会报fatalerror
循环相关语句-continue
基本概念: continue 用于结束本次循环剩余代码,从新开始新的一次循环(如果条件为真,就继续执行), continue 后面也可以带数字,表示从第几次循环重新开始