多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php框架 > ThinkPHP > 如何讓ThinkPHP的模板引擎達到最佳效率

如何讓ThinkPHP的模板引擎達到最佳效率

來源:程序員人生   發布時間:2013-10-20 00:17:16 閱讀次數:3525次
默認情況下ThinkPHP框架系統默認使用的模板引擎是內置模板引擎。內置模板引擎支持模板文件中采用php原生態代碼和模板標簽的混合使用。
ThinkPHP官方開發文檔說,這種默認的內置模板引擎的性能是高效的,但還不是最佳的。要使模板引擎的性能達到最佳效率,就要使用PHP本身作為模板引擎。
使用PHP本身作為模板引擎其實很簡單,只需在項目的配置文件Conf/config.php上配置:
'TMPL_ENGINE_TYPE' =>'PHP'

采用PHP本身作為模板引擎后,意味著你將不能再使在模板文件上使用系統默認使用的模板引擎的模板標簽,你只能使用原生態的php代碼。
下面將通過實例來演示一下,采用PHP本身作為模板引擎后,如何在模板上操作php代碼。

下載wblog3.1.2_3博客程序并安裝并安裝(你也可以自建項目)
首先配置項目W3noteConfconfig.php文件添加一項配置項:
<?php
return array(
    ...
    'TMPL_ENGINE_TYPE' =>'PHP',
    ...
    
);
?>
然后把控制器W3noteLibActionIndexAction.class.php和對應模板W3noteTplIndexindex.html的代碼清空以待不同的調試之用。
好了,基礎工作已經做好了,接下來是調試記錄:

1、在模板上使用php原生態代碼
IndexAction.class.php控制器代碼
<?php
class IndexAction extends Action {
    public function index(){         
        $this->display();
    }
}
index.html模板代碼:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>使用原生態的php代碼</title>
</head>
<body>
  <?php
    $title= '網志博客';
    echo $title;//輸出變量
  ?>
</body>
</html>
輸出:網志博客

像原生態的php代碼一樣,可以在模板上聲明變量并輸出變量,還可以標識代碼注釋,不過需要注意的是,必須使用php開始標志"<?php",用"<php>不行嗎,為什么?接下來你就知道了。


2、控制器代碼同上面,模板代碼如下
 <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
    <title>使用原生態的php代碼</title>
   </head>
  <body>
    <php>
    $title='網志博客';
    echo $title;
    </php>
   
</body>
</html>
輸出:$title='網志博客'; echo $title;

在模板上把"<?php ?>"換成<php></php>后,結果無法解釋變量,說明不支持<php></php>標簽。

3、在模板上直接使用查詢語句
控制器代碼同1,模板代碼如下
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>使用原生態的php代碼</title>
</head>
<body>
    <?php
    $vo=M('News')->find();
    echo $vo['title'];
    ?>
   
</body>
</html>
輸出:歡迎使用WBlog博客程序

控制器在一邊呆著似乎什么也沒做,模板上竟然可以這樣寫,實在太靈活了!

4、在模板上調用控制器分配的查詢結果
IndexAction.class.php控制器代碼
<?php
class IndexAction extends Action {
    public function index(){
        $vo=M('News')->find();

        $this->assign('vo', $vo);

        $this->display();
    }
}
模板index.html代碼
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>使用原生態的php代碼</title>
</head>
<body>
    <?php
   
    echo $vo['title'];
    ?>
   
</body>
</html>
輸出:歡迎使用WBlog博客程序

這種情況和系統默認使用的模板引擎時寫法沒什么兩樣。

5、在模板上調用項目函數庫的函數
控制器代碼同1,模板代碼如下
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>使用原生態的php代碼</title>
</head>
<body>
    <?php
    echo pwdHash('abc');//調用項目W3noteCommoncommon.php函數庫的加密函數pwdHash()
    ?>
   
</body>
</html>
輸出:af10ef457ed637b91955369297b8e640

擯棄了系統默認模板引擎笨拙(相對來講)的標簽語法,函數的調用是如此簡單!


總結:在ThinkPHP中使用PHP本身作為模板引擎,可以使模板引擎的性能達到最佳效率,在模板上需要使用原生態的php語法,寫法比較活活,但是系統默認模板引擎的模板標簽將失去作用。
本文地址:http://w3note.com/web/106.html
生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 国产一区二区不卡免费观在线 | 毛片福利 | 福利精品一区 | 五月激情丁香婷婷综合第九 | 亚洲欧美久久精品 | 国产成人精品日本亚洲专 | 一本久到久久亚洲综合 | 日韩欧美一区二区三区中文精品 | 精品中文字幕在线 | www.操操| 亚洲天堂免费在线 | 亚洲国产精品自产拍在线播放 | 在线观看91精品国产性色 | 网红毛片| 欧美成人中文字幕dvd | 男女免费观看在线爽爽爽视频 | 最近中文字幕免费完整国语 | 欧美午夜精品久久久久免费视 | 久久国产精品一区二区 | 国产福利在线看 | 国内精品91久久久久 | 嫩草影院在线观看精品 | 日本强在线播放一区 | 成人亚洲视频在线观看 | 中文字幕无线 | 亚洲精品国产第1页 | 国产麻豆精品在线观看 | 国产精品亚洲综合一区在线观看 | 日本不卡在线一区二区三区视频 | 午夜美女写真福利写视频 | 夜夜躁日日躁 | 欧美最猛性xxxxx免费 | 日韩欧美亚洲在线 | 国内精品久久久久激情影院 | 亚洲精品456在在线播放 | 免费观看在线永久免费xx视频 | 国产成人青草视频 | 手机在线精品视频每日更新 | 亚洲成在人 | 中文字幕日本一本二本三区 | 337p日本欧洲亚洲大胆色噜噜 |