php的语言控制结构

在我们开发站点的过程中,很多情况会根据各种不同的条件,以此来进行不同的操作,这样可以有效的响应用户的输入,我们的代码具备了判断能力。我们一般把这种句式称为控制结构,就是程序语言中用来控制一个程序或者脚本执行流程的结构。常见的就是条件结构和循环结构。

条件结构句式有if else句式 ;switch句式

咱们先看条件结构 if else 句式

最常见的就是if句式了,这种用的也最多,对于比较简单的判断,非常适用。

if 正如英文意思“如果”(话外音:程序中所有的代码都是英文的,所以,如果英文水平好的话,那记忆和理解起来是很有优势的) 就是假设某种情况存在条件为真(true),那么接下来的代码将会被执行。

先上段代码看看

if($grade<60)

{ echo “成绩不及格”;

echo “查看老师点评”; }

else

{ echo “及格了”; }

通过上面的代码我们可以看出 if 语句的条件必须用圆括号()括起来。 这里一定注意,这种圆括号不能用中文输入法的那种括号,写代码必须使用英文输入法的字符,否则执行会出错的。

接下来,第二,三行 这个花括号括起来的我们一般称之为一个代码块(一个语句或多个语句都可以), 如果上面条件为真,就是$grade 这个值小于60的话(0~59),我们就会执行下面花括号包含的代码块。如果不为真(大于等于60分) 那么可以执行else下面的代码块就是 第五句,打印出来及格了,这三个字。有的时候我们只需要if判断出来条件为真执行的情况,不需要对条件为假进行操作的话,else 以及下面的就不用写了。直接就是下面这样

if($grade<60)

{ echo “成绩不及格”;

echo “查看老师点评”; }

有的时候,判断的条件比较多的话,我们还会用到elseif语句,elseif 是else和if的结合,通过一系列的条件,程序将检查每一个条件,直到找到一个为true的条件

比如下面:

if($buynum<10)

{ $price=100; }

elseif($buynum>=10 && $buynum<20 )

{ $price=90;}

elseif($buynum>=20 && $buynum<30 )

{ $price=80;}

elseif($buynum>=30)

{ $price=50;}

在这里,可以将elseif 写成 else if 中间的空格是可有可无的。

如果编写一系列的else 语句,你要知道,其中只有一个语句块将被执行,也就是说每次都只有一个条件为真,如果编写的条件语句其值同时为true的不止一个,那么只有第一个为true的条件下的语句将被执行。

我们再来看看switch语句

switch语句的工作方式类似于if语句,但是它允许条件可以有多于连个的可能值,一个if语句中,要么是真,要么是假,而再switch中,条件就可以具有任意多个不同值,这在条件很多的情况下,使得代码非常简洁。你必须提供一个case语句来处理每个条件值,挺且提供相应的代码逻辑,还应该有一个默认的case来处理没有提供任何特定值的情况。

比如:

switch ($type)

{

case “1” :

echo “one”;

break;

case “2 “:

echo “two”;

break;

case “3” :

echo “three”;

break;

default:

echo “other number”;

break;

}

我们可以看到,上面的代码非常简洁,思路非常清晰,对于这种多选项的判断,switch是一个很好的选择。

大家刚开始接触的时候,可能会问“那种句式比较好呢”,其实这个问题不大好回答,哪种句式都可以实现逻辑,但是你只有在进行了多个运用之后,才会自己知道,那种是最适合的。这也是一种经验的积累。

php还有一种句式就是循环句式;

php中最简单的就是while循环,就像if语句一样,它也依赖于一个条件。

while循环语句和if语句不同就在于if语句只有在条件为真的情况下才执行后续的代码块一次,而while循环语句只要条件为真,就会不断的循环重复执行代码块。

比如下面

$bianliang=1;

while($bianliang<5)

{

echo ‘<br>数字为:’.$num;

$num++;

}

在每一次代代的开始,都将对条件进行测试,如果条件为false,该代码块就不会被执行了。特别提醒大家的是:千万注意死循环,就是程序一直执行,出不来,那么就会造成网页崩溃了。比如上面的代码,我们把$num++ 去掉, 那么条件永远为真,会一直不断的循环,就 成了死循环了。

for循环和foreach 循环;

for循环是比while循环更加紧凑的循环。他的句式结构为:

for(表达式1,条件,表达式2)

{ 表达式3 }

表达式1 在开始的时候只执行一次,通常,这里都是设置变量的初始值;

条件 在每一次循环开始之前,条件表达式将被测试,如果条件表达式返回的为false,循环将结束。

表达式2 在每一次迭代结束时执行,这里可以调整变量的值;

表达式3 在每一次迭代的时候执行一次。通常,这个表达式是一个包含大量循环代码的代码块

比如上面的while循环我们用for表达为

for($bianliang=1,$bianliang<5,$bianliang++); 这样代码更为简洁,紧凑;

foreach 专门用于数组的操作,我们在后面专门讲解。

现在再来看一下do while 循环

do{} while() do while 循环与while循环类似,但是有一点不同,就是do 至少会执行一次。因为他的测试条件放到了最后。

如何从控制脚本中跳出:

如果希望停止执行一段代码,根据所需要达到的效果不同,可以用3中方法来实现;

如果希望终止一个循环,可以使用介绍switch 语句的时候,使用的break语句,直接跳出,脚本就会从循环体后面的第一条语句开始出执行。如果跳到下一次循环,就用continue;

如果希望结束整个php脚本的执行,可以使用exit;当执行错误检查的时候,这个语句非常有用,这就像我们的断点调试,可以一点一点的排除错误。

另外php还有declare 控制结构,这个不大常见,这种结构用来设置代码块的执行指令。也就是,关于后续代码如何运行的规则。目前php提供了两个执行指令。ticks和encodeing

未经允许不得转载:PHP100中文网 - 中国第一档PHP资源分享门户 » php的语言控制结构

赞 (0) 打赏

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏