PHP 循环:For, ForEach, While, Do While [示例]
循环是一种迭代控制结构,它涉及执行相同数量的代码,直到满足某个条件为止。
PHP For Loop (For 循环)
上面的代码输出“21大于7”。For 循环会执行指定次数的代码块。For 循环基本有两种类型:
- for (For)
- for… each (For Each)。
我们现在分别来看。For 循环 它的基本语法如下:
<?php for (initialize; condition; increment){ //code to be executed } ?>
此处,
- “for…{…}” 是循环块
- “初始化” 通常是一个整数;它用于设置计数器的初始值。
- “条件” 是每次 PHP 执行时都会评估的条件。如果它评估为真,则 for… 循环继续执行。如果它评估为假,则 for… 循环的执行将终止。
- “增量” 用于递增计数器整数的初始值。
工作原理
下面的流程图说明了 PHP 中的 for 循环的工作原理。
如何编码
下面的代码使用“for… 循环”打印 10 乘以 0 到 10 的值。
<?php for ($i = 0; $i < 10; $i++){ $product = 10 * $i; echo "The product of 10 * $i is $product <br/>"; } ?>
输出
The product of 10 x 0 is 0 The product of 10 x 1 is 10 The product of 10 x 2 is 20 The product of 10 x 3 is 30 The product of 10 x 4 is 40 The product of 10 x 5 is 50 The product of 10 x 6 is 60 The product of 10 x 7 is 70 The product of 10 x 8 is 80 The product of 10 x 9 is 90
PHP For Each loop (For Each 循环)
PHP foreach 循环用于遍历数组值。它的基本语法如下:
<?php foreach($array_variable as $array_values){ block of code to be executed } ?>
此处,
- “foreach(…){…}” 是 foreach PHP 循环块代码
- “$array_data” 是要遍历的数组变量。
- “$array_value” 是保存当前数组项值的临时变量。
- “代码块…” 是对数组值进行操作的代码片段。
工作原理 下面的流程图说明了 for… each… 循环的工作原理。
实际示例
下面的代码使用 for… each 循环读取和打印数组的元素。
<?php $animals_list = array("Lion","Wolf","Dog","Leopard","Tiger"); foreach($animals_list as $array_values){ echo $array_values . "<br>"; } ?>
输出
Lion Wolf Dog Leopard Tiger
我们来看另一个循环遍历关联数组的示例。
关联数组使用字母数字单词作为访问键。
<?php $persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female"); foreach($persons as $key => $value){ echo "$key is $value"."<br>"; } ?>
名字被用作数组键,性别作为值。
输出
Mary is Female John is Male Mirriam is Female
While Loop (While 循环)
PHP While loop (While 循环)
它们用于执行一段代码,直到满足设定的条件为止。
何时使用 while 循环
- While 循环用于执行一段代码,直到某个条件变为真为止。
- 您可以使用 while 循环来读取从数据库返回的记录。
While 循环的类型
- Do… while (do… while) – 在评估条件之前至少执行一次代码块。
- While… (While…) – 先检查条件。如果它评估为真,则只要条件为真,代码块就会执行。如果它评估为假,则 while 循环的执行将终止。
While loop (While 循环)
它具有以下语法
<?php while (condition){ block of code to be executed; } ?>
此处,
- “while(…){…}” 是 while 循环块代码。
- “条件” 是 while 循环要评估的条件。
- “代码块…” 是在条件满足时要执行的代码。
工作原理
下面的流程图说明了 while… 循环的工作原理。
实际示例
下面的代码使用 while… 循环打印数字 1 到 5。
<?php $i = 0; while ($i < 5){ echo $i + 1 . "<br>"; $i++; } ?>
输出
1 2 3 4 5
PHP Do While (PHP Do While)
While… 循环和 Do… while 循环的区别在于,do… while 在评估条件之前至少执行一次。
我们现在来看 do… while 循环的基本语法:
<?php do{ block of code to be executed } ?>
while(condition);
此处,
- “do{…} while(…)” 是 do… while 循环块代码。
- “条件” 是 while 循环要评估的条件。
- “代码块…” 是 do… while 循环至少执行一次的代码。
工作原理
下面的流程图说明了 while… 循环的工作原理。
实际示例
现在我们将修改 while… 循环示例,并使用 do… while 循环来实现它,并将计数器初始值设置为 9。
下面的代码实现了上述修改后的示例。
<?php $i = 9; do{ echo "$i is"." <br>"; } while($i < 9); ?>
上面的代码输出:
9
注意上面的示例仅输出 9。
这是因为即使设定的条件评估为 false,do… while 循环也会至少执行一次。
摘要
- for… 循环用于执行指定次数的代码块。
- foreach… 循环用于遍历数组。
- While… 循环用于执行一段代码,直到设定的条件为 false 为止。
- do… while 循环用于至少执行一次代码块,然后其余的执行取决于对设定的条件的评估。