在thinkphp的模板引擎中,若是輸出的變量是空的,但咱們的設計需求又不想讓這裏空出一大塊,須要給這個變量指定一個默認值,也就是說,若是 這個變量爲空,就顯示咱們指定的默認值。那麼這個可不能夠在thinkphp的模板引擎裏面實現呢?實現固然是能夠的,有的同窗可能會疑問,直接用if去 判斷不就能夠實現了嗎?呵呵,由於是在模板裏面,若是在裏面寫大量的php代碼,就達不到MVC的那個效果了,在模板裏面儘可能所有用標籤來處理,其實在 thinkphp裏面有一個語法規則,格式是這樣: php
{$變量|default=」默認值」} html
這裏的default不是函數,而是系統的一個語法規則,例如: thinkphp
{$name|default=’名稱爲空’} 瀏覽器
對於一些系統變量的輸出,也是能夠支持默認值的哦,好比獲取post和get參數的時候,並且這個默認值是能夠支持HTML語法的,很強大吧!下面小編經過一個例子來演示這個默認值的效果,無憂主機(www.51php.com)小編建議你們學習期間在本地搭建php虛擬主機的環境,方便調試! 函數
在默認控制器(IndexAction.class.php)中加入如下代碼: post
<?php class IndexAction extends Action { public function index() { $name=''; $this->assign('name',$name); $this->display(); } } ?>
而後在其對應的模板(index.html)裏面寫以下代碼,來測試下 學習
name變量的值:<{$name|default=’name的值爲空’}> <br> 測試
get參數user的值:<{$Think.get.user|default=’傳遞參數爲空’}> this
傳遞get參數的方法是http://localhost/index.php/index/index/user/test spa
用/分開,和傳統不同,關於幾種URL模式還會在後面詳細講到的。保存好代碼後就能夠到瀏覽器中去訪問測試了。