<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                [TOC] # 基礎 ## tc_include tc_include是前臺模板包含文件的方法,用于替換原來的include的標簽,實現更多功能 用法: ```html <tc_include file="Public:nav"/> <!--加載的是當前模板的Public/nav.html--> <tc_include file="Public/nav"/> <!--加載的是當前模板的Public/nav.html--> <tc_include file="Portal/sidebar"/> <!--加載的是當前模板的Portal/sidebar.html--> <tc_include file="User/Profile/nav"/> <!--加載的是用戶模板的User/Profile/nav.html--> ``` ## foreach forech標簽 屬性 `name`:表示數據源; `item`:表示循環變量; ```html <foreach name="list" item="vo" > {$vo.name} {$key} </foreach> ``` 更改屬性key的變量名: ```html <foreach name="list" item="vo" key="k"> {$vo.name} {$k} </foreach> ``` ## volist volist標簽通常用于查詢數據集(select方法)的結果輸出,通常模型的select方法返回的結果是一個二維數組,可以直接使用volist標簽進行輸出。 在控制器中首先對模版賦值: ``` $User = M('User'); $list = $User->limit(10)->select(); $this->assign('list',$list); ``` 在模版定義如下,循環輸出用戶的編號和姓名: ``` <volist name="list" id="vo"> {$vo.id}:{$vo.name}<br/> </volist> ``` volist標簽的name屬性表示模板賦值的變量名稱,因此不可隨意在模板文件中改變。id表示當前的循環變量,可以隨意指定,但確保不要和name屬性沖突,例如: ``` <volist name="list" id="data"> {$data.id}:{$data.name}<br/> </volist> ``` 支持輸出查詢結果中的部分數據,例如輸出其中的第5~15條記錄 ``` <volist name="list" id="vo" offset="5" length='10'> {$vo.name} </volist> ``` 輸出偶數記錄 ``` <volist name="list" id="vo" mod="2" > <eq name="mod" value="1">{$vo.name}</eq> </volist> ``` Mod屬性還用于控制一定記錄的換行,例如: ``` <volist name="list" id="vo" mod="5" > {$vo.name} <eq name="mod" value="4"><br/></eq> </volist> ``` 為空的時候輸出提示: ``` <volist name="list" id="vo" empty="暫時沒有數據" > {$vo.id}|{$vo.name} </volist> ``` empty屬性不支持直接傳入html語法,但可以支持變量輸出,例如: ``` $this->assign('empty','<span class="empty">沒有數據</span>'); $this->assign('list',$list); ``` 然后在模板中使用: ``` <volist name="list" id="vo" empty="$empty" > {$vo.id}|{$vo.name} </volist> ``` 輸出循環變量 ``` <volist name="list" id="vo" key="k" > {$k}.{$vo.name} </volist> ``` 如果沒有指定key屬性的話,默認使用循環變量i,例如: ``` <volist name="list" id="vo" > {$i}.{$vo.name} </volist> ``` 如果要輸出數組的索引,可以直接使用key變量,和循環變量不同的是,這個key是由數據本身決定,而不是循環控制的,例如: ``` <volist name="list" id="vo" > {$key}.{$vo.name} </volist> ``` 模板中可以直接使用函數設定數據集,而不需要在控制器中給模板變量賦值傳入數據集變量,如: ``` <volist name=":fun('arg')" id="vo"> {$vo.name} </volist> ``` ## php php代碼可以和標簽在模板文件中混合使用,可以在模板文件里面書寫任意的PHP語句代碼 ,包括下面兩種方式: 使用php標簽 例如: ``` <php>echo 'Hello,world!';</php> ``` 我們建議需要使用PHP代碼的時候盡量采用php標簽,因為原生的PHP語法可能會被配置禁用而導致解析錯誤。 使用原生php代碼 ``` <?php echo 'Hello,world!'; ?> ``` 注意:php標簽或者php代碼里面就不能再使用標簽(包括普通標簽和XML標簽)了,因此下面的幾種方式都是無效的: ``` <php><eq name='name'value='value'>value</eq></php> ``` php標簽里面使用了eq標簽,因此無效 ``` <php>if( {$user} != 'ThinkPHP' ) echo 'ThinkPHP' ;</php> ``` php標簽里面使用了{$user}普通標簽輸出變量 ,因此無效。 ``` <php>if( $user.name != 'ThinkPHP' ) echo 'ThinkPHP' ;</php> ``` php標簽里面使用了 `$user.name` 點語法變量輸出 ,因此無效。 >簡而言之,在PHP標簽里面不能再使用PHP本身不支持的代碼。 如果設置了 `TMPL_DENY_PHP` 參數為 `true`,就不能在模板中使用原生的PHP代碼,但是仍然支持PHP標簽輸出。 ## if else 用法示例: ``` <if condition="($name eq 1) OR ($name gt 100) "> value1 <elseif condition="$name eq 2"/>value2 <else /> value3 </if> ``` 在`condition`屬性中可以支持`eq`等判斷表達式,同上面的比較標簽,但是不支持帶有”>”、”<”等符號的用法,因為會混淆模板解析,所以下面的用法是錯誤的: ``` <if condition="$id < 5 ">value1 <else /> value2 </if> ``` 必須改成: ``` <if condition="$id lt 5 ">value1 <else /> value2 </if> ``` 除此之外,我們可以在condition屬性里面使用php代碼,例如: ``` <if condition="strtoupper($user['name']) neq 'THINKPHP'">ThinkPHP <else /> other Framework </if> ``` condition屬性可以支持點語法和對象語法,例如: 自動判斷user變量是數組還是對象 ``` <if condition="$user.name neq 'ThinkPHP'">ThinkPHP <else /> other Framework </if> ``` 或者知道user變量是對象 ``` <if condition="$user:name neq 'ThinkPHP'">ThinkPHP <else /> other Framework </if> ``` 由于`if`標簽的`condition`屬性里面基本上使用的是`php`語法,盡可能使用`判斷標簽`和`Switch標簽`會更加簡潔,原則上來說,能夠用`switch`和`比較標簽`解決的盡量不用`if標簽`完成。因為`switch`和`比較標簽`可以使用變量調節器和系統變量。如果某些特殊的要求下面,IF標簽仍然無法滿足要求的話,可以使用原生php代碼或者PHP標簽來直接書寫代碼。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看