PHP中冒号、endif、endwhile、endfor使用介绍


Posted in PHP onApril 28, 2010

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

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

对于相当一部分PHP爱好者来说根本没见过啊,这些是什么东西呢?难道是那些博客的开发者自己搞的仿PHP的模板语言?
非也,其实这些都是PHP的语法,只不过不常用而已,这些都是PHP流程控制的替代语法。
这里就就给大家详细说一下PHP流程控制的替代语法。什么是替代语法?
简单的说就是一些语法的另类写法。

PHP中那些语法有替代语法?
流程控制(包括if,while,forforeach,switch)这几个语句有替代语法。

替代语法的基本形式:
左花括号({)换成冒号(:),把右花括号(})分别换成 endif;,endwhile;,endfor;,endforeach; 以及 endswitch;

举个例子吧:

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

为什么纯PHP代码里面几乎看不到?
这些语法有点不符合C家族的传统有点另类,大家不大习惯于这种语法,而且不是很方便

大家都不习惯,而且这么另类要他有什么用?蛋疼吗?
存在就是合理,它自有它的用处,这些语法能发挥的地方是在PHP和HTML混合页面的代码里面。好处如下:
1.使HTML和PHP混合页面代码更加干净整齐。
有代码洁癖的朋友最惧怕的就是乱七八糟的混合代码,有了这些没有花括号的替代语法,各位爱干净的朋友开心到尿震。
2.流程控制逻辑更清晰,代码更容易阅读
要改别人的PHP和HTML混合代码,打开发现,我擦!太TMD垃圾了!如果用替代语法,我想再垃圾的程序开发人员也不至于写的太乱吧。
3.一些从ASP等其他类basic语言家族转来的朋友,会更容易使用PHP。

讲半天没用的,捞点干的行不?这东西怎么用?

根据之前描述的使用方法,if语句的替代语法使用如下:

<?php if ($a == 5): ?> 
<div>等于5</div> 
<?php elseif ($a == 6): ?> 
<div>等于5</div> 
<?php else: ?> 
<div>不是5就是6</div> 
<?php endif; ?>

while替代语法:
<?php while (expr): ?> 
<li>循环点什么</li> 
<?php endwhile; ?>

for替代语法:
<?php for (expr1; expr2; expr3): ?> 
<li>循环点什么</li> 
<?php endfor; ?>

foreach替代语法:
<?php foreach (expr1): ?> 
<li>循环点什么</li> 
<?php endforeach; ?>

switch替代语法:

<?php 
switch ($i): 
case 0: 
echo "i equals 0"; 
break; 
case 1: 
echo "i equals 1"; 
break; 
case 2: 
echo "i equals 2"; 
break; 
default: 
echo "i is not equal to 0, 1 or 2"; 
endswitch; 
?>
PHP 相关文章推荐
PHP 5.0对象模型深度探索之属性和方法
Mar 27 PHP
一步一步学习PHP(3) php 函数
Feb 15 PHP
一个PHP的QRcode类与大家分享
Nov 13 PHP
关于Zend Studio 配色方案插件的介绍
Jun 24 PHP
腾讯QQ微博API接口获取微博内容
Oct 30 PHP
兼容各大浏览器带关闭按钮的漂浮多组图片广告代码
Jun 05 PHP
php编写的一个E-mail验证类
Mar 25 PHP
详解PHP中的null合并运算符
Dec 30 PHP
PHP全局变量与超级全局变量区别分析
Apr 01 PHP
php常用字符串String函数实例总结【转换,替换,计算,截取,加密】
Dec 07 PHP
利用PHP判断文件是否为图片的方法总结
Jan 06 PHP
php封装db类连接sqlite3数据库的方法实例
Dec 19 PHP
PHP 文件上传全攻略
Apr 28 #PHP
PHP GD 图像处理组件的常用函数总结
Apr 28 #PHP
PHP 开发环境配置(测试开发环境)
Apr 28 #PHP
PHP 开发环境配置(Zend Studio)
Apr 28 #PHP
PHP 开发环境配置(Zend Server安装)
Apr 28 #PHP
PHP开发环境配置(MySQL数据库安装图文教程)
Apr 28 #PHP
PHP PDO函数库详解
Apr 27 #PHP
You might like
用PHP即时捕捉PHP中的错误并发送email通知的实现代码
2013/01/19 PHP
PHP购物车类Cart.class.php定义与用法示例
2016/07/20 PHP
laravel5.4利用163邮箱发送邮件的步骤详解
2017/09/22 PHP
javascript 树控件 比较好用
2009/06/11 Javascript
Aptana调试javascript图解教程
2009/11/30 Javascript
点弹代码 点击页面任何位置都可以弹出页面效果代码
2012/09/17 Javascript
jquery点击页面任何区域实现鼠标焦点十字效果
2013/06/21 Javascript
从JQuery源码分析JavaScript函数的apply方法与call方法
2014/09/25 Javascript
一款基jquery超炫的动画导航菜单可响应单击事件
2014/11/02 Javascript
jQuery实现文本框输入同步的方法
2015/06/20 Javascript
包含中国城市的javascript对象实例
2015/08/03 Javascript
纯CSS3代码实现滑动开关效果
2015/08/19 Javascript
详解JavaScript中的事件流和事件处理程序
2016/05/20 Javascript
JavaScript实现in-place思想的快速排序方法
2016/08/07 Javascript
js实现颜色阶梯渐变效果(Gradient算法)
2017/03/21 Javascript
jQuery实现简单的滑动导航代码(移动端)
2017/05/22 jQuery
微信小程序使用for循环动态渲染页面操作示例
2018/12/25 Javascript
jquery实现轮播图特效
2020/04/12 jQuery
[03:01]完美盛典趣味短片 DOTA2年度最佳&拉胯英雄
2019/12/07 DOTA
python获取文件真实链接的方法,针对于302返回码
2018/05/14 Python
python使用xlrd模块读取xlsx文件中的ip方法
2019/01/11 Python
Pyqt5 基本界面组件之inputDialog的使用
2019/06/25 Python
python实现飞船游戏的纵向移动
2020/04/24 Python
Public Desire美国/加拿大:全球性的在线鞋类品牌
2018/12/17 全球购物
什么是会话Bean
2015/05/14 面试题
年度考核评语
2014/01/19 职场文书
大堂副理的岗位职责范文
2014/02/17 职场文书
工程售后服务承诺书
2014/05/21 职场文书
综合素质自我评价怎么写
2014/09/14 职场文书
2014年工会工作总结
2014/11/12 职场文书
现货白银电话营销话术
2015/05/29 职场文书
导游词之无锡华莱坞
2019/12/02 职场文书
利用Matlab绘制各类特殊图形的实例代码
2021/07/16 Python
Python 阶乘详解
2021/10/05 Python
解决Python保存文件名太长OSError: [Errno 36] File name too long
2022/05/11 Python
Spring中bean集合注入的方法详解
2022/07/07 Java/Android