Rumah >pembangunan bahagian belakang >tutorial php >php三大流程控制语句比较说明

php三大流程控制语句比较说明

伊谢尔伦
伊谢尔伦asal
2017-06-22 09:26:562038semak imbas

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 后面也可以带数字,表示从第几次循环重新开始

Atas ialah kandungan terperinci php三大流程控制语句比较说明. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn