PHP中的替代语法(冒号、endif、endwhile、endfor)

作者: php 发布时间: 2019-09-03 浏览: 2728 次 编辑

我们经常在wordpress一类博客程序的模板里面看到很多奇怪的PHP语法,比如:

<?php if(empty($GET_['a'])): ?>
   <font color="red">空的</font>
<?php endif; ?>

对于相当一部分PHP爱好者来说根本没见过,这些是什么东西呢?其实这些都是PHP流程控制的替代语法,只不过不常用而已。
下面就就给大家详细说一下PHP流程控制的替代语法。
1.什么是替代语法?
简单的说就是一些语法的另类写法。

2.PHP中有哪些语法有替代语法?

if,while,for,forforeach,switch这些流程控制语句都有替代语法。

3.替代语法的基本形式:

左花括号({)换成冒号(:),把右花括号(})分别换成 endif;,endwhile;,endfor;,endforeach; 以及 endswitch;
例子:

<?php if ($a<0): ?>
    是负数拉
<?php endif; ?>
 
上面的语句等同于
<?php if ($a<0){ ?>
    是负数拉
<?php } ?>

4.大家都不习惯,而且这么另类要他有什么用?
存在就是合理,它自有它的用处,这些语法能发挥的地方是在PHP和HTML混合页面的代码里面。好处如下:
1)使HTML和PHP混合页面代码更加干净整齐。
2)流程控制逻辑更清晰,代码更容易阅读。