PHP流程控制详解

好久没有更新了,还是把最近的学习笔记记下来,又方便日后查阅。我们都知道,任何一种计算机语言的设计中,都需要支持满足结构化所需的3种基本结构:1.顺序结构2.分支结构3.循环机构。

1.顺序结构

在程序中,顺序结构是最基本的。程序会依照从上至下的顺序依次执行。


2.分支结构

分支结构大致分为①单分支结构(只是用if)②双向分支结构(if…else语句的使用)③多分支结构(switch语句或者if语句的嵌套使用)。

①单分支结构


if(逻辑表达式得到一个bool类型的值)

//执行一条语句

 

if(逻辑表达式得到一个bool类型的值){

//可以执行多条语句

}

②双向分支结构


//表示如果if中的表达式为真,则执行

if(表达式(条件)){

echo '条件满足';

}else{

echo '条件不满足';

}

③多分支结构

多分支结构的大部分指的是switch 还有的是if else的嵌套使用。其中switch语句。其中switch括号中的是匹配条件,如果输入与case后面的值相同就会执行相应的代码。在这里需要注意的一点是,break必不可少,这是退出程序的方法,如果没有break程序将会执行到遇到break为止。


//switch语句

$type =1;

switch($type) {
case 1: echo "条件1<br>"; break;

case 2: echo "条件2<br>"; break;

case 3:

case 4:echo '条件3或者4";break;

default: echo "输入的不在范围内<br>"; break;
}

if语句的嵌套就是在if语句的代码块中继续使用if语句,但是需要注意的是嵌套太多层可能会hold不住。


3.循环结构

在php中循环结构大致上有①while循环,②do while循环,③for循环,④goto语句。

①while循环


/*当括号中的条件满足时,就会执行循环体中的语句,直到条件不满足的时候跳出循环。在这里是先判断条件,后面有先执行一遍再判断条件的do while循环*/

$a=0;

while($a<10){

echo $a.'</br>';

$a++;

}

②do while循环 :先执行一遍do中的内容,再判断条件是否满足,如满足继续执行do中的内容,不满足就退出循环。


//这个例子是通过do while循环来实现1到100的累加计算。do while与while的区别在前面也讲到了,就是dowhile循环会先执行一遍循环体。值得注意的一点是,在do while的结尾必须添加分号;。

$i=1;
$sum=0;

do{

$sum+=$i;

$i++;

}while($i<=100);

echo $sum;

③for循环:for循环的形式是for(表达式一;表达式二;表达式三)其中这几个表达式都可以省略,如果都省略了,也不加其他的限制就成了死循环。当然这些表达式也可以不写在括号中。但是这样就失去了意义。for循环的执行顺序是这样的。首先表达式一执行且只执行一次,相当于初始化变量的值。然后判断第二个表达式是否满足,满足则执行循环体,循环体执行完了然后执行++操作即第三个表达式。然后又去判断第二个表达式…如此循环直到条件不满足或者遇到了特殊的跳出循环语句break。


for( $i=0; $i < 100 ; $i++) {

echo $i.'循环体';
}

④goto语句:goto操作符是PHP5.3+后新增功能,goto语句使用非常简单方便,想执行那块代码能够瞬间到达,但是大量的使用goto语句这会让读代码的人,甚至自己可能都读不懂自己的代码。


$i=0;

xh:

echo $i.'</br>';
if($i > 10)
goto mm;

$i++;

goto xh;
mm:{

echo '这是结束end';

}

这样php的流程控制大致上就是这样的。

发表评论

电子邮件地址不会被公开。 必填项已用*标注