流程控制的替代语法
PHP 提供了一些流程控制的替代语法,包括 if,while,for,foreach 和 switch。替代语法的基本形式是把左花括号({)换成冒号(:),把右花括号(})分别换成 endif;,endwhile;,endfor;,endforeach; 以及 endswitch;。
- <?php if ($a == 5): ?>
- A is equal to 5
- <?php endif; ?>
- <?php
- if ($a == 5):
- echo "a equals 5";
- echo "...";
- elseif ($a == 6):
- echo "a equals 6";
- echo "!!!";
- else:
- echo "a is neither 5 nor 6";
- endif;
- ?>
Note:
不支持在同一个控制块内混合使用两种语法。
主要是在 HTML 模板里用这种写法比较清晰。
link
wordpress 内大括号的使用风格
大括号应该在含有多行的代码块中使用:
- if ( condition ) {
- action1();
- action2();
- } elseif ( condition2 && condition3 ) {
- action3();
- action4();
- } else {
- defaultaction();
- }
为了简洁,只含有一行的代码块可以省去大括号:
- if ( condition )
- action1();
- elseif ( condition2 )
- action2();
- else
- action3();
如果任何一个逻辑相关(比如判断)的代码块含有多行代码,那么所有的相关代码块都应该用大括号包含.
- if ( condition ) {
- action1();
- } elseif ( condition2 ) {
- action2a();
- action2b();
- }
循环应该总是放到大括号里面以增强可读性,这样一来也可以允许调试或者增加额外的功能编辑里面的代码.
- foreach ( $items as $item ) {
- process_item( $item );
- }