首页 > 编程 > PHP > 正文

什么是php流程控制?了解流程控制语句运行步骤

2020-03-22 18:52:30
字体:
来源:转载
供稿:网友
什么是流程控制:在声明式的编程语言中,流程控制指令是指会改变程序运行顺序的指令,可能是运行不同位置的指令,或是在二段(或多段)程序中选择一个运行。

  命令式编程:命令“机器”如何去做事情(how),这样不管你想要的是什么(what),它都会按照你的命令实现。
  声明式编程:告诉“机器”你想要的是什么(what),让机器想出如何去做(how)。

不论是PHP还是别的语法,程序总是由若干条语句组成。

从执行方式上看,语句的控制结构分为以下三种:

1、 顺序结构:从第一条语句到最后一条语句完全顺序执行;

2、 选择结构:根据用户输入或语句的中间结果去执行若干任务;

3、 循环结构:根据某条条件重复地执行某项任务若干次,或直到达成目标即可。

PHP中 有三种控制语句用以实现选择结构与循环结构:

1、 条件控制语句:if、else、elseif和switch;

2、 循环控制语句:foreach、while、do...while..和for;

3、 转移控制语句:break、continue和return。

下面有几个小实例可以参考一下

条件控制语句:

If语句,用法:

 If(E) 语句块1; else  语句块2;

解析:如果E返回值为true,则执行语句块1;否则执行语句块2。

例子,代码:

<?php $a = 59;  //根据$a的值,判断是否要妹子。如果>=60则输出要代码  if($a>=60){ echo “要妹子”;}else  echo “要代码”;?>

If···elseif···else语句,用法:

if(E)  echo '要妹子';;else if(X)  echo '不要妹子';;else echo '要代码';

解析:如果E为true,则执行要妹子。否则,如果B的值为true,则不要妹子;否则执行语要代码。当然:if语句也可以嵌套使用。

下面是个If···elseif···else的例子:

 <?php  $a = 59;  if($a>=60) //在大于等于60的情况里在进行分类 {  if($a==100)  echo “要妹子”;  elseif($a>=90)  echo “睡妹子”; else  echo “睡不起”; } else  echo “睡大街吧”; ?>

Switch语句,语法如下:

switch(E){ case val1:  语句块1;  Break; case val2:  语句块2;  Break; default:  语句块3; }

当一个case语句中的值和switch表达式E的值匹配时,PHP开始执行语句,直到switch程序段结束或者遇到第一个break语句为止

(如果没有遇到break,则PHP将继续执行下一个case)。

break是结束整个循环体,continue是结束单词循环

下面是一个没有break的例子:

 <?php  switch($leve1) {  case 3:   echo “高级”;  case 2:   echo “中级”;  case 1:    echo “初级”;  default:    echo “错误的等级值”; } ?>

执行结果为:高级中级初级错误的等级值

由此你想到了什么??

 <?php  $level = 3;  switch($level) {  case 3:   echo “赋予管理员权限”;  case 2: echo “赋予站务权限”;  case 1:  echo “赋予版主权限”;  default:   echo “赋予普通用户权限”; } ?>

与if相比switch达到了更高的效率:

 <?php  $a = 59; switch($a)  { case $a == 100;  echo “满分”;  break; case $a >= 90;  echo “优秀”;  break; case $a >= 60;  echo “及格”;  break; default:  echo “不及格”; } ?>

那么循环语句是干嘛用的呢?当然是用于反复地执行某一个操作。

While 与do···while While的语法: While(E) 语句块;

解析:只要while表达式中的E为TRUE,就执行statement。

do···while的语法:

 do {  语句块; } while(E)

do···while与while的区别只是在循环结束时do···while进行检查,不管循环的条件满足与否,do···while都将执行一次。

例如:

 <?php  $a = 5; //先判断$a是否大于5,如果大于5则执行。  while($a>5) {  echo “This is while.”;  $a–; } do //先执行do之内的语句,然后进行判断。 {  echo “This is do…while.”;  $a–; } while($a > 5) ?>

For语句,语法:

 For(A;B;C)  Statement;

分析:第一个表达式在循环开始时先无条件的执行一次,一般A都为赋值语句;B在循环开始前运行,如果为TRUE,

则继续循环,执行循环的嵌套语句;C在循环之后执行,一般都是自加自减运算。

代码:

 <?php  for($a = 5;$a > 5;$a–);  echo “This is for”; ?>

Foreach语句,用于数组的遍历,以后将会学到。

转移控制语句

PHP中主要有三种转移控制语句:break、continue和return。

1、 break语句

break语句用于结束当前循环,break可以接受一个可选的数字参数来决定跳出几重循环。

例子: 

<?php  $a = 5;  $b = 10; while($a <100) //$a<100开始循环 {  echo “a = “.$a.”<BR>”; //输出$a,“.”时连接运算符,相当于java中的“+” while($b > 0) //$b>0,开始循环 {  echo “b = ” .$b.”<BR>”; //输出$b  $b–;  if($b == 3 ) //如果$b==3,则跳出while($b>0)  break; }  $a++;  if($a == 30)  break; //如果$a==30,就跳出while($a<100) } ?>

Continue语句

Continue用于跳出本次循环,与break不同的是,continue跳出后将继续执行下一次循环。

Return语句 Return语句用于结束一个函数或者一个脚本文件。如果在一个函数中调用return语句将立即结束这个函数的执行,并将它的值作为参数返回。

当然,在PHP中也可以将return当做一个函数来使用。如return(),并在括号内写上要返回的参数。这种用法并不常见。

给大家附上一张图细细斟酌。

以上就是什么是php流程控制?了解流程控制语句运行步骤的详细内容,更多请关注 其它相关文章!

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表