<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>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # ThinkPHP6 模版 * `ThinkPHP` 內置了一個基于 `XML` 的性能卓越的模板引擎,這是一個專門為ThinkPHP服務的內置模板引擎,使用了 `XML` 標簽庫技術的編譯型模板引擎,支持兩種類型的模板標簽,使用了動態編譯和緩存技術,而且支持自定義標簽庫。 * `config/template.php` 文件可以進行模版設置 --- **標簽類型**|**描述** ---|--- 普通標簽|主要用于輸出變量、函數過濾和做一些基本的運算操作 XML標簽|也稱為標簽庫標簽,主要完成一些邏輯判斷、控制和循環輸出,并且可擴展 ## 一、普通標簽 ### 1、普通標簽標記 * `config/template.php` 文件里的 `tpl_begin` 和 `tpl_end` 設置普通標簽標記 ```php 示例: return [ // 模板引擎普通標簽開始標記 'tpl_begin' => '{', // 模板引擎普通標簽結束標記 'tpl_end' => '}' ]; ``` ### 2、模版 變量輸出 ```php php示例: namespace app\index\controller; use app\BaseController; use think\facade\View; class Index extends BaseController{ public function index(){ View::assign('n','ouyangke'); $data = [ 'name' => 'PHP中文網', 'teacher' => [ 'ouyangke' => '歐陽克', 'huangrong' => '黃蓉' ] ]; View::assign($data); return View::fetch(); } } ``` ```html html示例: <div>我是 {$n}</div> <div>學校:{$name}</div> <div>講師1:{$teacher.ouyangke}</div> <div>講師2:{$teacher.huangrong}</div> ``` ### 3、模版 系統變量 * 系統變量則不需要賦值,直接在模版中使用 * 支持輸出 `$_SERVER` `$_ENV` `$_POST` `$_GET` `$_REQUEST` `$_SESSION` `$_COOKIE` 變量 ```html html示例: <div>{$Think.server.HTTP_HOST}</div> ``` ### 4、模版 函數 **方法**|**描述** ---|--- default|默認值 md5|md5加密 date|日期格式化(支持各種時間類型) format|字符串格式化 upper|轉換為大寫 lower|轉換為小寫 first|輸出數組的第一個元素 last|輸出數組的最后一個元素 substr|返回字符串的一部分 ```php php示例: namespace app\index\controller; use app\BaseController; use think\facade\View; class Index extends BaseController{ public function index(){ $data = [ 'pwd' => '123456', 'time' => '1561016803', 'number' => 123123234.434, 'up' => 'ouyangke', 'lo' => 'HangRong', 'arr' => [ 'ouyangke' => '歐陽克', 'huangrong' => '黃蓉', 'guojing' => '郭靖' ], 'sub' => '歐陽克' ]; View::assign($data); return View::fetch(); } } ``` ```html <div>{$name|default='PHP中文網'}</div> <div>{$pwd|md5}</div> <div>{$time|date="Y-m-d H:i:s"}</div> <div>{$number|format='%02d'}</div> <div>{$up|upper}</div> <div>{$lo|lower}</div> <div>{$arr|first}</div> <div>{$arr|last}</div> <div>{$sub|substr=0,3}</div> ``` ### 5、模版 運算符 **方法**|**描述** ---|--- `+`|加法 `-`|減法 `*`|乘法 `/`|除法 `%`|取余 `++`|加加 `--`|減減 ```php php示例: namespace app\index\controller; use app\BaseController; use think\facade\View; class Index extends BaseController{ public function index(){ $data = [ 'a' => 100, 'b' => 21 ]; View::assign($data); return View::fetch(); } } ``` ```html html示例: <div>{100+21} = {$a+$b}</div> <div>{100-21} = {$a-$b}</div> <div>{100*21} = {$a*$b}</div> <div>{100/21} = {$a/$b}</div> <div>{100%21} = {$a%$b}</div> <div>{100++} = {$a++}</div> <div>{100--} = {$a--}</div> ``` ### 6、模版 原樣輸出 ```php <?php namespace app\index\controller; use app\BaseController; use think\facade\View; class Index extends BaseController{ public function index(){ $data = [ 'name' => '歐陽克' ]; View::assign($data); return View::fetch(); } } ``` ```html html示例: <div> {literal} Hello,{$name}! {/literal} </div> ``` ### 7、模版 注釋 ```html html示例: {// 這是單行注釋 } {/* 這是多行注釋 */} <div>歐陽克</div> ``` ### 8、模版 包含文件 ```html html示例: {include file="public/header" /} <div>這是內容</div> {include file="public/bottom" /} ``` ```html header文件: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>被包含文件</title> </head> <body> ``` ```html bottom文件: </body> </html> ``` --- ## 二、XML標簽 ### 1、XML標簽標記 * `config/template.php` 文件里的 `tpl_begin` 和 `tpl_end` 設置普通標簽標記 ```php 示例: return [ // 標簽庫標簽開始標記 'taglib_begin' => '{', // 標簽庫標簽結束標記 'taglib_end' => '}' ]; ``` ### 2、循環標簽 * `FOREACH` 標簽 ```php php示例: namespace app\index\controller; use app\BaseController; use think\facade\View; class Index extends BaseController{ public function index(){ $data = [ ['id' => 1,'name' => '歐陽克'], ['id' => 2,'name' => '黃蓉'], ['id' => 3,'name' => '郭靖'] ]; View::assign($data); return View::fetch(); } } ``` ```html html示例: {foreach $data as $key => $value } <div>key:{$key} --- id:{$value.id} --- 姓名:{$value['name']}</div> {/foreach} ``` * `VOLIST` 標簽 > name 要循環的數組 > id 循環賦值 > key 下標 > offset 開始位置 > length 循環長度 ```html html示例: {volist name="data" id="value" key="key" } <div>key:{$key} --- id:{$value.id} --- 姓名:{$value['name']}</div> {/volist} {volist name="data" id="value" key="key" offset="1" length="2"} <div>key:{$key} --- id:{$value.id} --- 姓名:{$value['name']}</div> {/volist} ``` > foreach下標是0開始,volist下標是1開始 * `FOR` 標簽 > start 開始值 > end 結束值 > step 步進值 > name 循環變量名 ```html {for start="10" end="100" name="a" step="5" } <div>{$a}</div> {/for} ``` ### 3、條件判斷標簽 ```php php示例: namespace app\index\controller; use app\BaseController; use think\facade\View; class Index extends BaseController{ public function index(){ $data = [ 'name' => 'huangrong', 'number' => 100 ]; View::assign($data); return View::fetch(); } } ``` * `SWITCH` 標簽 ```html {switch $name } {case ouyangke} <div>我是歐陽克</div> {/case} {case huangrong} <div>我是黃蓉</div> {/case} {default /} <div>我是主講</div> {/switch} ``` * `IF` 標簽 ```html {if $number >= 90} <div>優秀</div> {elseif $number >= 60 /} <div>及格</div> {else /} <div>不及格</div> {/if} ``` * `IN` 標簽 ```html {in name="number" value="99,100,101"} <div>在范圍內</div> {/in} ``` * `NOTIN` 標簽 ```html {notin name="number" value="102,103,014"} <div>不在范圍內</div> {/notin} ``` * `BETWEEN` 標簽 ```html {between name="number" value="99,200"} <div>在范圍內</div> {/between} ``` * `NOTBETWEEN` 標簽 ```html {notbetween name="number" value="A,Z"} <div>不在范圍內</div> {/notbetween} ``` ### 4、比較標簽 **標簽**|**含義** ---|--- eq或者 equal|等于 neq 或者notequal|不等于 gt|大于 egt|大于等于 lt|小于 elt|小于等于 heq|恒等于 nheq|不恒等于 ```php php示例: namespace app\index\controller; use app\BaseController; use think\facade\View; class Index extends BaseController{ public function index(){ $data = [ 'name' => '歐陽克', 'number' => 100 ]; View::assign($data); return View::fetch(); } } ``` ```html html示例: {eq name="name" value="歐陽克"} <div>相等</div> {/eq} {neq name="name" value="黃蓉"} <div>不相等</div> {/neq {gt name="number" value="5"} <div>大于5</div> {/gt} {egt name="number" value="100"} <div>大于等于100</div> {/egt} {lt name="number" value="234"} <div>小于234</div> {/lt} {elt name="number" value="100"} <div>小于100</div> {/elt} {eq name="name" value="黃蓉"} <div>相等</div> {else/} <div>不相等</div> {/eq} ``` > 備注:每個標簽都可以增加 `{else/}` 判斷標簽
                  <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>

                              哎呀哎呀视频在线观看