PHP中冒號(hào)、endif、endwhile、endfor使用介紹
更新時(shí)間:2010年04月28日 21:19:24 作者:
下面的一些用法,對(duì)于相當(dāng)一部分PHP愛好者來(lái)說(shuō)根本沒見過(guò)啊,這些是什么東西呢?
我們經(jīng)常在wordpress一類博客程序的模板里面看到很多奇怪的PHP語(yǔ)法,比如:
<?php if(empty($GET_['a'])): ?>
<font color="red">空的</font>
<?php endif; ?>
對(duì)于相當(dāng)一部分PHP愛好者來(lái)說(shuō)根本沒見過(guò)啊,這些是什么東西呢?難道是那些博客的開發(fā)者自己搞的仿PHP的模板語(yǔ)言?
非也,其實(shí)這些都是PHP的語(yǔ)法,只不過(guò)不常用而已,這些都是PHP流程控制的替代語(yǔ)法。
這里就就給大家詳細(xì)說(shuō)一下PHP流程控制的替代語(yǔ)法。什么是替代語(yǔ)法?
簡(jiǎn)單的說(shuō)就是一些語(yǔ)法的另類寫法。
PHP中那些語(yǔ)法有替代語(yǔ)法?
流程控制(包括if,while,forforeach,switch)這幾個(gè)語(yǔ)句有替代語(yǔ)法。
替代語(yǔ)法的基本形式:
左花括號(hào)({)換成冒號(hào)(:),把右花括號(hào)(})分別換成 endif;,endwhile;,endfor;,endforeach; 以及 endswitch;
舉個(gè)例子吧:
<?php if ($a<0): ?>
是負(fù)數(shù)拉
<?php endif; ?>
上面的語(yǔ)句等同于
<?php if ($a<0){ ?>
是負(fù)數(shù)拉
<?php } ?>
為什么純PHP代碼里面幾乎看不到?
這些語(yǔ)法有點(diǎn)不符合C家族的傳統(tǒng)有點(diǎn)另類,大家不大習(xí)慣于這種語(yǔ)法,而且不是很方便
大家都不習(xí)慣,而且這么另類要他有什么用?蛋疼嗎?
存在就是合理,它自有它的用處,這些語(yǔ)法能發(fā)揮的地方是在PHP和HTML混合頁(yè)面的代碼里面。好處如下:
1.使HTML和PHP混合頁(yè)面代碼更加干凈整齊。
有代碼潔癖的朋友最懼怕的就是亂七八糟的混合代碼,有了這些沒有花括號(hào)的替代語(yǔ)法,各位愛干凈的朋友開心到尿震。
2.流程控制邏輯更清晰,代碼更容易閱讀
要改別人的PHP和HTML混合代碼,打開發(fā)現(xiàn),我擦!太TMD垃圾了!如果用替代語(yǔ)法,我想再垃圾的程序開發(fā)人員也不至于寫的太亂吧。
3.一些從ASP等其他類basic語(yǔ)言家族轉(zhuǎn)來(lái)的朋友,會(huì)更容易使用PHP。
講半天沒用的,撈點(diǎn)干的行不?這東西怎么用?
根據(jù)之前描述的使用方法,if語(yǔ)句的替代語(yǔ)法使用如下:
<?php if ($a == 5): ?>
<div>等于5</div>
<?php elseif ($a == 6): ?>
<div>等于5</div>
<?php else: ?>
<div>不是5就是6</div>
<?php endif; ?>
while替代語(yǔ)法:
<?php while (expr): ?>
<li>循環(huán)點(diǎn)什么</li>
<?php endwhile; ?>
for替代語(yǔ)法:
<?php for (expr1; expr2; expr3): ?>
<li>循環(huán)點(diǎn)什么</li>
<?php endfor; ?>
foreach替代語(yǔ)法:
<?php foreach (expr1): ?>
<li>循環(huán)點(diǎn)什么</li>
<?php endforeach; ?>
switch替代語(yǔ)法:
<?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;
?>
復(fù)制代碼 代碼如下:
<?php if(empty($GET_['a'])): ?>
<font color="red">空的</font>
<?php endif; ?>
對(duì)于相當(dāng)一部分PHP愛好者來(lái)說(shuō)根本沒見過(guò)啊,這些是什么東西呢?難道是那些博客的開發(fā)者自己搞的仿PHP的模板語(yǔ)言?
非也,其實(shí)這些都是PHP的語(yǔ)法,只不過(guò)不常用而已,這些都是PHP流程控制的替代語(yǔ)法。
這里就就給大家詳細(xì)說(shuō)一下PHP流程控制的替代語(yǔ)法。什么是替代語(yǔ)法?
簡(jiǎn)單的說(shuō)就是一些語(yǔ)法的另類寫法。
PHP中那些語(yǔ)法有替代語(yǔ)法?
流程控制(包括if,while,forforeach,switch)這幾個(gè)語(yǔ)句有替代語(yǔ)法。
替代語(yǔ)法的基本形式:
左花括號(hào)({)換成冒號(hào)(:),把右花括號(hào)(})分別換成 endif;,endwhile;,endfor;,endforeach; 以及 endswitch;
舉個(gè)例子吧:
復(fù)制代碼 代碼如下:
<?php if ($a<0): ?>
是負(fù)數(shù)拉
<?php endif; ?>
上面的語(yǔ)句等同于
<?php if ($a<0){ ?>
是負(fù)數(shù)拉
<?php } ?>
為什么純PHP代碼里面幾乎看不到?
這些語(yǔ)法有點(diǎn)不符合C家族的傳統(tǒng)有點(diǎn)另類,大家不大習(xí)慣于這種語(yǔ)法,而且不是很方便
大家都不習(xí)慣,而且這么另類要他有什么用?蛋疼嗎?
存在就是合理,它自有它的用處,這些語(yǔ)法能發(fā)揮的地方是在PHP和HTML混合頁(yè)面的代碼里面。好處如下:
1.使HTML和PHP混合頁(yè)面代碼更加干凈整齊。
有代碼潔癖的朋友最懼怕的就是亂七八糟的混合代碼,有了這些沒有花括號(hào)的替代語(yǔ)法,各位愛干凈的朋友開心到尿震。
2.流程控制邏輯更清晰,代碼更容易閱讀
要改別人的PHP和HTML混合代碼,打開發(fā)現(xiàn),我擦!太TMD垃圾了!如果用替代語(yǔ)法,我想再垃圾的程序開發(fā)人員也不至于寫的太亂吧。
3.一些從ASP等其他類basic語(yǔ)言家族轉(zhuǎn)來(lái)的朋友,會(huì)更容易使用PHP。
講半天沒用的,撈點(diǎn)干的行不?這東西怎么用?
根據(jù)之前描述的使用方法,if語(yǔ)句的替代語(yǔ)法使用如下:
復(fù)制代碼 代碼如下:
<?php if ($a == 5): ?>
<div>等于5</div>
<?php elseif ($a == 6): ?>
<div>等于5</div>
<?php else: ?>
<div>不是5就是6</div>
<?php endif; ?>
while替代語(yǔ)法:
復(fù)制代碼 代碼如下:
<?php while (expr): ?>
<li>循環(huán)點(diǎn)什么</li>
<?php endwhile; ?>
for替代語(yǔ)法:
復(fù)制代碼 代碼如下:
<?php for (expr1; expr2; expr3): ?>
<li>循環(huán)點(diǎn)什么</li>
<?php endfor; ?>
foreach替代語(yǔ)法:
復(fù)制代碼 代碼如下:
<?php foreach (expr1): ?>
<li>循環(huán)點(diǎn)什么</li>
<?php endforeach; ?>
switch替代語(yǔ)法:
復(fù)制代碼 代碼如下:
<?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;
?>
相關(guān)文章
php中自定義函數(shù)dump查看數(shù)組信息類似var_dump
本文為大家介紹下在php中自定義函數(shù)dump查看數(shù)組信息,具體示例如下,希望對(duì)大家有所幫助2014-01-01PHP實(shí)現(xiàn)把數(shù)字ID轉(zhuǎn)字母ID
以下是對(duì)使用PHP把數(shù)字ID轉(zhuǎn)字母ID的實(shí)現(xiàn)代碼進(jìn)行了詳細(xì)的分析介紹,需要的朋友可以過(guò)來(lái)參考下2013-08-08幾個(gè)優(yōu)化WordPress中JavaScript加載體驗(yàn)的插件介紹
這篇文章主要介紹了幾個(gè)優(yōu)化WordPress中JavaScript加載體驗(yàn)的插件,一般來(lái)說(shuō)在WordPress中加載JavaScript最好使用wp_enqueue_script()函數(shù)以減少問(wèn)題提高效率,需要的朋友可以參考下2015-12-12PHP里面把16進(jìn)制的圖片數(shù)據(jù)顯示在html的img標(biāo)簽上(實(shí)現(xiàn)方法)
下面小編就為大家?guī)?lái)一篇PHP里面把16進(jìn)制的圖片數(shù)據(jù)顯示在html的img標(biāo)簽上(實(shí)現(xiàn)方法)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-05-05php使用Jpgraph創(chuàng)建柱狀圖展示年度收支表效果示例
這篇文章主要介紹了php使用Jpgraph創(chuàng)建柱狀圖展示年度收支表效果,結(jié)合完整實(shí)例形式分析了Jpgraph創(chuàng)建柱狀圖的具體步驟與操作技巧,需要的朋友可以參考下2017-02-02php 強(qiáng)制下載文件實(shí)現(xiàn)代碼
php 強(qiáng)制下載文件實(shí)現(xiàn)代碼。需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助2013-10-10解決nginx不支持thinkphp中pathinfo的問(wèn)題
這篇文章主要介紹如何解決當(dāng)Nginx不支持pathinfo問(wèn)題時(shí)該如何解決,需要的朋友可以參考下2015-07-07