学而实习之 不亦乐乎

PHP中的控制语句

2019-01-20 15:58:21

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

1、条件控制语句:if、else、elseif和switch;
2、循环控制语句:foreach、while、do while和for;
3、转移控制语句:break、continue和return。

还有declare,只是用的比较少一些。

下面分别简单介绍:

1.条件控制语句
if语句
if (condition) {
  statement;
}

if (condition) {
  statement;
} else {
  statement;
}

if (condition) {
  statement;
} elseif (condition) {
  statement;
} else {
  statement;
}


switch语句
switch (expression)
{
case label1:
  code to be executed if expression = label1;
  break;  
case label2:
  code to be executed if expression = label2;
  break;
default:
  code to be executed
  if expression is different 
  from both label1 and label2;
}
注意:如果case语句中没有break语句,swith语句将执行下一个值为true的case语句。


2.循环控制语句
whilet和do...while语句
while 循环是 PHP 中最简单的循环类型。它和C语言中的while表现地一样。while语句的基本格式是:
while (condition)
    statement;

do {
  statement;
} while (condition);
注意:do...while至少会执行一次。

for语句
for 循环是 PHP 中最复杂的循环结构。它的行为和 C 语言的相似。 for 循环的语法是:
for (expression1; condition; expression2)
    expression3;
expression1:只在循环开始前执行一次。通常设置计数变量的初始值。
condition:每次循环开始时执行,如果返回值为false,循环停止。
expression2:每次循环结束时执行,通常在这里修改计数变量的值。
expression3:循环体,每次循环时都会执行。

foreach语句
foreach 语法结构提供了遍历数组的简单方式。foreach 仅能够应用于数组和对象,如果尝试应用于其他数据类型的变量,或者未初始化的变量将发出错误信息。有两种语法:
foreach (array_expression as $value)
    statement;
foreach (array_expression as $key => $value)
    statement;

    
可替换控制结构语法
PHP对于控制语句还提供了可替换的语法形式。
如下
if(condition):
    statement;
endif;

其他的如endswitch,endwhile,endfor或endforeach。do...while循环没有可替换语法。
    
3.转移控制语句
break、ontinue和return语句
break 结束当前 for,foreach,while,do-while 或者 switch 结构的执行。
break 可以接受一个可选的数字参数来决定跳出几重循环。

continue 在循环结构用用来跳过本次循环中剩余的代码并在条件求值为真时开始执行下一次循环。
Note: 注意在 PHP 中 switch 语句被认为是可以使用 continue 的一种循环结构。
continue 接受一个可选的数字参数来决定跳过几重循环到循环结尾。默认值是 1,即跳到当前循环末尾。

break 结束当前 for,foreach,while,do-while 或者 switch 结构的执行。
break 可以接受一个可选的数字参数来决定跳出几重循环。


4.使用declare
PHP的另一个控制结构是declare结构,日常编程用的比较少。
declare 结构用来设定一段代码的执行指令。
形式如下:
declare(directive)
{
//block
}

directive 部分允许设定 declare 代码段的行为。目前只认识两个指令:ticks以及 encoding。