php for循环语句的几种用法分析

在 php中for 循环是 PHP 中最复杂的循环结构。它的行为和 C 语言的相似,也是最基本的循环语句了,在开发中也是必不可少的,有需要了解的朋友可以看看。

for 循环的语法是:

  1. for (expr1; expr2; expr3)
  2. statement

下面说说for语句几种有用的变型。

1、无限循环

这种也叫死循环,没有开始和结束一直就这样下去

  1. for (;;) {
  2.  //放置需要不断执行的语句
  3. }
  4. ?>

死循环如果在当中配合if else ,break也可以跳出循环

  1. for (;;) {
  2.  //如果是公元2199年,则跳出循环
  3.  if (date('Y') == '2199') {
  4.   break;
  5.  }
  6. }
  7. ?>

2、使用空表达式

接下来就是说说在初始化语句expr1中使用null语法,留空expr1最常见的作用就是完成更为复杂的初始化工作。

  1. if (isset($i)) {
  2.  unset($i);
  3.  if ((int) date('') < 2008) {
  4.   $i = 0;
  5.  } else {
  6.   $i = 1;
  7.  }
  8. } else {
  9.  $i =3;
  10. }
  11. for (;$i < 10;$i++) {
  12.  echo $i;
  13. }
  14. ?>

同样道理,迭代表达式expr3也可能留空,也可以利用这点编写更为复杂的迭代式,比如说根据不同的条件调用不同的迭代式。

而for语句中的条件语句expr2留空则是上面所说的无限循环,当然也可以添加一些更为复杂的条件去判断什么时候跳出循环,在此不在重复。

3、多重循环

使用多重循环来控制多个变量也是在for语句中使经常被忽略的一个特性。如下面的例子,在一般的任务中用到的一般会是双重循环,三重以上的循环一般意义不大。

  1. for ($i = 0, $j = 10;$i <= 10;$i++, $j--) {
  2.  echo "$i + $j = 10rn";
  3. }
  4. ?>