• 當前位置: 首頁 / 廈門建站(zhàn)百科(kē) / 廈門網站(zhàn)建設
  • thinkphp5.0模版常用标簽(tp5模闆調用标簽)

    時間(jiān):2022-10-30 浏覽量: 收藏

    模闆标簽 模闆文件(jiàn)可(kě)以包含普通(tōng)标簽和标簽庫标簽,标簽的定界符都可(kě)以重新配置。 

     普通(tōng)标簽用于變量輸出和模闆注釋,普通(tōng)模闆标簽默認以{ 和 } 作爲開(kāi)始和結束标識,并且在開(kāi)始标記緊跟标簽的定義,如果之間(jiān)有空格或者換行(xíng)則被視(shì)爲非模闆标簽直接輸出。 

    标簽庫标簽可(kě)以用于模闆變量輸出、文件(jiàn)包含、條件(jiàn)控制(zhì)、循環輸出等功能,而且完全可(kě)以自(zì)己擴展功能。 配置文件(jiàn)修改:

    變量輸出 :

     在控制(zhì)器中我們給模闆變量賦值

    $this->assign('host','www.xmsmwl.cn');
    return $this->fetch();

    然後就(jiù)可(kě)以在模闆中使用: 

     網址:{$host}

    注意模闆标簽的{和$之間(jiān)不(bù)能有任何的空格,否則标簽無效。 

    數組變量使用:

    $user['name'] = 'Thinkphp';
    $user['email'] = 'admin@thinkphp.cn';
    $view->assign('user',$user);

    在模闆中我們可(kě)以用下面的方式輸出 

    Name:{$user.name} 
     Email:{$user.email}

     或者用下面的方式也是(shì)有效: 

     Name:{$user['name']} 
     Email:{$user['email']}

    函數使用

    往往需要(yào)對模闆輸出變量使用函數,可(kě)以使用:

    {$user.name|md5} {:md5($user.name)}

    如果函數有多(duō)個參數需要(yào)調用,則使用需要(yào)用###标識變量位置

    {$create_time|date="y-m-d",###}{:date(‘y-m-d’,$create_time)}

    也可(kě)以直接這(zhè)樣寫使用:加函數名使用

    {:substr(strtoupper(md5($name)),0,3)}

    默認值使用:

    我們可(kě)以給變量輸出提供默認值

    {$user.nickname|default="這(zhè)家(jiā)夥很(hěn)懶,什麽也沒留下"}

    條件(jiàn)判斷IF标簽使用: 

    IF标簽可(kě)以用來(lái)定義複雜的條件(jiàn)判斷,例如:

    {if condition="($name eq 1) OR ($name gt 100) "} 
        value1
    {elseif condition="$name eq 2" /}
        value2
    {else /} 
        value3
    {/if}
    //注意:在condition屬性中可(kě)以支持eq等判斷表達式 
    //不(bù)支持帶有”>”、”<”等符号的用法,因爲會(huì)混淆模闆解析

    可(kě)以在condition屬性裡(lǐ)面使用php代碼,例:

    {if condition="count($arr) gt 5"}
        數組元素個數大(dà)于5個
    {else /} 
        數組元素個數小(xiǎo)于5個
    {/if}

    運算符應用:

    我們可(kě)以對模闆輸出使用運算符,包括對“+”“-” “*” “/”和“%”的支持。

    三元運算應用

    {$status? '正常' : '錯誤'}

    原樣輸出:

    可(kě)以使用literal內(nèi)置标簽來(lái)防止模闆标簽被解析:

    {literal}
        Hello,{$name}!
    {/literal}

    循環輸出标簽

    VOLIST标簽:

    Volist标簽的name屬性表示模闆賦值的變量名稱,因此不(bù)可(kě)随意在模闆文件(jiàn)中改變。id表示當前的循環變量,可(kě)以随意指定,但(dàn)确保不(bù)要(yào)和name屬性沖突,

    {volist name="list" id="vo"}
        <p>{$vo.id}:{$vo.name}</p>
    {/volist}

    如果沒有指定key屬性的話,默認使用循環變量i,

    {volist name="list" id="vo" key="k" }
        {$k}.{$vo.name}
    {/volist}

    支持輸出查詢結果中的部分(fēn)數據

    {volist name="list" id="vo" offset="5" length='10'}
        {$vo.name}
    {/volist}

    輸出偶數記錄:mod顯示的行(xíng)數;沒顯示2行(xíng)再從(cóng)1開(kāi)始

    {volist name="list" id="vo" mod="2" }
        {eq name="mod" value="1"}
            {$vo.name}
        {/eq}
    {/volist}

    FOREACH标簽

    foreach标簽類似與volist标簽,隻是(shì)更加簡單,沒有太多(duō)額外(wài)的屬性

    {foreach $list as $vo} 
        {$vo.id}:{$vo.name}
    {/foreach}

    name表示數據源 item表示循環變量。

    {foreach name="list" item="vo" key="k"}
    {$vo.id}:{$vo.name}
    {/foreach}

    FOR标簽

    {for start="開(kāi)始值" end="結束值" comparison="" step="步進值" name="循環變量名" }{/for}

    開(kāi)始值、結束值、步進值和循環變量都可(kě)以支持變量,開(kāi)始值和結束值是(shì)必須,其他是(shì)可(kě)選。comparison 的默認值是(shì)lt即爲小(xiǎo)于的意思,name的默認值是(shì)i,步進值的默認值是(shì)1。

    switch标簽:

    多(duō)條件(jiàn)标簽

    {switch 變量名}
        {case 1}值爲1{/case}
        {case 1}值爲2{/case}
        {case 1}值爲3{/case}
        {default /}值爲其他
    {/switch}

    case屬性支持多(duō)個條件(jiàn)的判斷

    對于case屬性多(duō)個條件(jiàn)的判斷,使用”|”進行(xíng)分(fēn)割

    {switch data.sex|intval}
        {case 16|17|18}值爲16,17,18其中一個{/case}
        {default /}值爲其他
    {/switch}

    比較标簽:

    eq或者 equal:等于

    neq 或者notequal:不(bù)等于

    gt:大(dà)于

    egt:大(dà)于等于

    lt:小(xiǎo)于

    elt:小(xiǎo)于等于

    heq:恒等于

    nheq:不(bù)恒等于

    比較标簽的用法基本是(shì)一緻的,區别在于判斷的條件(jiàn)不(bù)同,格式如下:

    {比較标簽 name="變量" value="值"}內(nèi)容{/比較标簽}

    in标簽與range标簽:

    in 标簽 in 标簽用于某個模闆變量是(shì)否在某個範圍之內(nèi),格式如下:

    {in name="變量名" value="值1,值2,..."}在value值範圍輸出內(nèi)容{/in}

    notin 标簽 對應的notin 标簽,爲 in 标簽的反義,即判斷不(bù)在某個範圍內(nèi):

    {notin name="變量名" value="值1,值2,..."}不(bù)在value值範圍輸出內(nèi)容{/notin}

    in和notin兩個标簽合并起來(lái)等同于:

    {in name="變量名" value="值1,值2,..."}在value值範圍輸出內(nèi)容{else /}不(bù)在value值範圍輸出內(nèi)容{/in}

    range 标簽 in 和 notin 标簽也可(kě)以使用 range 标簽來(lái)替代:

    {range name="變量名" value="值1,值2,..." type="in" }在value值範圍輸出內(nèi)容{/range}

    上面的例子相(xiàng)當于 in 标簽,當 type 屬性的值爲 notin 時就(jiù)相(xiàng)當于 notin 标簽。

    tp5    think5    模闆标簽    

    頂一下
    (0)
    0.00%
    踩一下
    0
    0.00%
    加載中~

    Copyright © 2012-2024 世敏網絡 版權所有   京ICP證000000号    閩公網安備 35020502000640号        關鍵詞聚合

    世敏網絡

    您已成功複制(zhì)微(wēi)信号,去微(wēi)信立即添加好友!

    打開(kāi)微(wēi)信

    Wechart

    點擊下方複制(zhì)按鈕,複制(zhì)微(wēi)信号!

    jzm866081

    https://www.xmsmwl.cn
    廈門漳州市曙光網絡服務有限公司

    點擊這(zhè)裡(lǐ)聯系在線客服
    嘿!有什麽能幫到您的嗎(ma)?