循环之for()、while()、foreach()用法

本文章介绍最基本的循环语句的用法,在php中包括了for()、while()、foreach() do while 这几种最基本的语句.

while循环

while循环是PHP中最简单的循环,其基本格式为:

实例代码如下:

  1. while (expr){
  2. statement
  3. }
  4. //或者
  5. while (expr):
  6. statement
  7. endwhile;

该语法表示,只要expr表达式为TRUE,那么就一直执行statement直到expr为FALSE为止,statement表示要执行的动作或逻辑.

实例代码如下:

  1. <?php
  2. $i = 1;
  3. while ($i <= 10) {
  4. echo $i;
  5. $i++;
  6. }
  7. ?>

该例子循环输出1到10.

do-while循环

do-while循环和while循环非常相似,其区别只是在于do-while保证必须执行一次,而while在表达式不成立时则可能不做任何操作.

do-while 循环只有一种语法:

实例代码如下:

  1. do {
  2. statement
  3. }while (expr)

实例代码如下:

  1. <?php
  2. $i = 1;
  3. do {
  4. echo $i;
  5. $i++;
  6. } while ($i <= 10);
  7. ?>

该例子也是输出1到10

for循环

for循环是PHP中更为复杂的循环,其语法如下:

实例代码如下:

  1. for (expr1; expr2; expr3){
  2. statement
  3. }

下面的例子依然输出1到10:

实例代码如下:

  1. <?php
  2. for ($i = 1; $i <= 10; $i++) {
  3. echo $i;
  4. }
  5. ?>

语法解读

第一个表达式(expr1)在循环开始前无条件求值一次

expr2 在每次循环开始前求值,如果值为 TRUE,则继续循环,执行嵌套的循环语句;如果值为 FALSE,则终止循环.

expr3 在每次循环之后被求值(执行)

每个表达式都可以为空.如果expr2 为空意则将无限循环下去,但可以通过break来结束循环:

实例代码如下:

  1. <?php
  2. for ($i = 1; ; $i++) {
  3. if ($i > 10) {
  4. break;
  5. }
  6. echo $i;
  7. }
  8. ?>

在使用循环语句的时候,我们通常要注意不要无限循环而造成程序“僵死”,另外还要注意循环条件(循环判断表达式),以确保循环结果正确.