新聞中心
thinkphp3.0基礎(chǔ)模板引擎變量為空時(shí)輸出默認(rèn)值
在thinkphp的模板引擎中,如果輸出的變量是空的,但我們的設(shè)計(jì)需求又不想讓這里空出一大塊,需要給這個(gè)變量指定一個(gè)默認(rèn)值,也就是說,如果這個(gè)變量為空,就顯示我們指定的默認(rèn)值。那么這個(gè)可不可以在thinkphp的模板引擎里面實(shí)現(xiàn)呢?實(shí)現(xiàn)當(dāng)然是可以的,有的同學(xué)可能會(huì)疑問,直接用if去判斷不就可以實(shí)現(xiàn)了嗎?呵呵,因?yàn)槭窃谀0謇锩?,如果在里面寫大量的php代碼,就達(dá)不到MVC的那個(gè)效果了,在模板里面盡量全部用標(biāo)簽來處理,其實(shí)在thinkphp里面有一個(gè)語法規(guī)則,格式是這樣: {$變量|default="默認(rèn)值"} 這里的default不是函數(shù),而是系統(tǒng)的一個(gè)語法規(guī)則,例如: {$name|default='名稱為空'} 對(duì)于一些系統(tǒng)變量的輸出,也是可以支持默認(rèn)值的哦,比如獲取post和get參數(shù)的時(shí)候,而且這個(gè)默認(rèn)值是可以支持HTML語法的,很強(qiáng)大吧!下面小編通過一個(gè)例子來演示這個(gè)默認(rèn)值的效果,無憂主機(jī)(www.gle-technology.com)小編建議大家學(xué)習(xí)期間在本地搭建php虛擬主機(jī)的環(huán)境,方便調(diào)試! 在默認(rèn)控制器(IndexAction.class.php)中加入以下代碼:
<?php class IndexAction extends Action { public function index() { $name=''; $this->assign('name',$name); $this->display(); } } ?>然后在其對(duì)應(yīng)的模板(index.html)里面寫如下代碼,來測(cè)試下 name變量的值:<{$name|default='name的值為空'}> <br> get參數(shù)user的值:<{$Think.get.user|default='傳遞參數(shù)為空'}> 傳遞get參數(shù)的方法是http://localhost/index.php/index/index/user/test 用/分開,和傳統(tǒng)不一樣,關(guān)于幾種URL模式還會(huì)在后面詳細(xì)講到的。保存好代碼后就可以到瀏覽器中去訪問測(cè)試了。 純Linux環(huán)境下高端免備案【香港獨(dú)立IP地址】 php空間,僅僅只需199元一年起。商務(wù)中國域名核心代理直銷50元注冊(cè)國際頂級(jí)域名
本文地址:http://www.gle-technology.com/thinkphp/8789.html