Php:while ... endwhile之间的区别是什么?虽然{//东西在这里}

时间:2011-01-10 20:05:50

标签: php

之间有什么区别
while (expression):

// do stuff

endwhile;

while {

}

4 个答案:

答案 0 :(得分:38)

没有功能差异。

在实际使用中,我发现:

while (expression):
// do stuff
endwhile;

当您在html中嵌入php代码时,设计人员更具可读性。 IE:

<? while ($cssClass = array_pop($array)): ?>
   <li class="<?=$cssClass?>">
<? endwhile; ?>

鉴于:

while {

}

在php代码块中更具可读性。

答案 1 :(得分:6)

没有区别,这取决于个人偏好。

答案 2 :(得分:2)

编写代码时没有什么区别。

在非常特殊的情况下,便利性水平可能会有所不同。例如,假设您正在编写一个模板引擎,它将模板代码转换为本机PHP代码,然后将其缓存并直接执行以提高速度。

在这种情况下,while ... endwhile;避免使用大括号的事实可以让您简化解析算法,例如:它识别应该用{$var}等语法替换的变量,它也使用大括号。

当然,在非常特殊的情况下,这是一个非常小的好处,但你可以尽你所能。 :)

答案 3 :(得分:2)

当代码实际运行时,差异可以忽略不计,但编码时我发现键入括号是(1):更快,(2):更常规,(3):允许更少的错误机会(endwhle)人?)。

作为奖励,我使用的编辑器会自动格式化while循环(默认情况下使用括号),并且如果有任何关闭,内置的括号匹配功能将捕获它。