流程控制的替代语法
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 ); }