allwiki首页  
天下维客 你可以修改的网络知识库
首页最近更改优秀条目专题展示电脑科技词典软件学习网络知识电脑安全明星时尚天下百科
 

PHP的for循环

天下维客,你可以修改的网络知识库

Jump to: navigation, search
PHP的控制流程语句 PHP的for循环 PHP的while循环 PHP的do-while循环 PHP的foreach循环

for 循环PHP 中最复杂的循环结构。它的行为和 C语言 相似。 for 循环的语法是:

for (expr1; expr2; expr3)
	statement
expr1
初始化语句,在循环开始前无条件执行一次,常用于给循环控制变量赋初值。expr1部分可以提到for语句之前,效果相同。
expr2
循环结束条件,在每次循环开始前求值。如果值为 TRUE,则继续循环中的statement部分;如为 FALSE 则结束循环。
expr3
在每次循环之后被执行,然后继续判断expr2以决定是否继续循环。常用于每次循环后调整循环控制变量的取值。
statement
循环体,一般为使用{}包围的一组语句

for循环的各种变体

标准的for循环可以展开为如下情形:

<?php
... expr1 ...
for (;;) {
	if ( expr2 ) break;
	... statement ...
}	... expr3 ...
?>

这个展开形式表明:for语句之中的每个表达式都可以为空。

  • expr1 为空表示本循环没有初始化部分。这可能是初始化工作在for语句之间已经完成。
  • expr2 为空意味着将无限循环(PHP 默认其值为 TRUE)。这可能是循环终止条件比较复杂,因而在循环体内部进行了(多处) break 退出控制,否则即成为死循环
  • expr3 为空表示下次循环的expr2判断之前不进行相关处理。这可能是在循环体内部已经完成了相关操作。

for循环实例

考虑以下的例子,它们都显示数字 1 到 10:

<?php
/* example 1 */
for ($i = 1; $i <= 10; $i++) {
	echo $i;
}
 
/* example 2 */
for ($i = 1;; $i++) {
	if ($i > 10) {
		break;
	}
	echo $i;
}
 
/* example 3 */
$i = 1;
for (;;) {
	if ($i > 10) {
		break;
	}
	echo $i;
	$i++;
}
 
/* example 4 */
for ($i = 1; $i <= 10; echo $i, $i++);
?>

当然,第一个例子看上去最正常(或者第四个),但用户可能会发现在 for 循环中用空的表达式在很多场合下会很方便。

for循环的另一种写法

PHP 也支持用冒号的 for 循环的替代语法。

for (expr1; expr2; expr3):
	statement;
	...
endfor;
Personal tools
工具
金银币拍卖 金币拍卖预展  金银币网店 熊猫金银币 生肖金银币