欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

讓ThinkPHP的模板引擎達(dá)到最佳效率的方法詳解

 更新時間:2017年03月14日 11:28:42   作者:chinalorin  
這篇文章主要介紹了讓ThinkPHP的模板引擎達(dá)到最佳效率的方法,結(jié)合實(shí)例形式較為詳細(xì)的分析了thinkPHP模板引擎的使用方法與使用原生態(tài)php語法的效率問題,需要的朋友可以參考下

本文分析了讓ThinkPHP的模板引擎達(dá)到最佳效率的方法。分享給大家供大家參考,具體如下:

默認(rèn)情況下ThinkPHP框架系統(tǒng)默認(rèn)使用的模板引擎是內(nèi)置模板引擎。內(nèi)置模板引擎支持模板文件中采用php原生態(tài)代碼和模板標(biāo)簽的混合使用。

ThinkPHP官方開發(fā)文檔說,這種默認(rèn)的內(nèi)置模板引擎的性能是高效的,但還不是最佳的。要使模板引擎的性能達(dá)到最佳效率,就要使用PHP本身作為模板引擎。

使用PHP本身作為模板引擎其實(shí)很簡單,只需在項(xiàng)目的配置文件Conf/config.php上配置:

'TMPL_ENGINE_TYPE' =>'PHP'

采用PHP本身作為模板引擎后,意味著你將不能再使在模板文件上使用系統(tǒng)默認(rèn)使用的模板引擎的模板標(biāo)簽,你只能使用原生態(tài)的php代碼。

下面將通過實(shí)例來演示一下,采用PHP本身作為模板引擎后,如何在模板上操作php代碼。

下載wblog3.1.2_3博客程序并安裝并安裝(你也可以自建項(xiàng)目)

首先配置項(xiàng)目W3note\Conf\config.php文件添加一項(xiàng)配置項(xiàng):

<?php
return array(
 ...
 'TMPL_ENGINE_TYPE' =>'PHP',
 ...
);
?>

然后把控制器\W3note\Lib\Action\IndexAction.class.php和對應(yīng)模板\W3note\Tpl\Index\index.html的代碼清空以待不同的調(diào)試之用。

好了,基礎(chǔ)工作已經(jīng)做好了,接下來是調(diào)試記錄:

1、在模板上使用php原生態(tài)代碼

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>使用原生態(tài)的php代碼</title>
</head>
<body>
 <?php
 $title= '網(wǎng)志博客';
 echo $title;//輸出變量
 ?>
</body>
</html>

輸出:

$title='網(wǎng)志博客'; echo $title;

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

2、在模板上直接使用查詢語句

控制器代碼同1,模板代碼如下

<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>使用原生態(tài)的php代碼</title>
</head>
<body>
 <?php
 $vo=M('News')->find();
 echo $vo['title'];
 ?>
</body>
</html>

輸出:

歡迎使用WBlog博客程序

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

3、在模板上調(diào)用控制器分配的查詢結(jié)果

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>使用原生態(tài)的php代碼</title>
</head>
<body>
 <?php
 echo $vo['title'];
 ?>
</body>
</html>

輸出:

歡迎使用WBlog博客程序

這種情況和系統(tǒng)默認(rèn)使用的模板引擎時寫法沒什么兩樣。

4、在模板上調(diào)用項(xiàng)目函數(shù)庫的函數(shù)

控制器代碼同1,模板代碼如下

<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>使用原生態(tài)的php代碼</title>
</head>
<body>
 <?php
 echo pwdHash('abc');//調(diào)用項(xiàng)目\W3note\Common\common.php函數(shù)庫的加密函數(shù)pwdHash()
 ?>
</body>
</html>

輸出:

af10ef457ed637b91955369297b8e640

擯棄了系統(tǒng)默認(rèn)模板引擎笨拙(相對來講)的標(biāo)簽語法,函數(shù)的調(diào)用是如此簡單!

總結(jié):在ThinkPHP中使用PHP本身作為模板引擎,可以使模板引擎的性能達(dá)到最佳效率,在模板上需要使用原生態(tài)的php語法,寫法比較活活,但是系統(tǒng)默認(rèn)模板引擎的模板標(biāo)簽將失去作用。

更多關(guān)于thinkPHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《ThinkPHP入門教程》、《thinkPHP模板操作技巧總結(jié)》、《ThinkPHP常用方法總結(jié)》、《codeigniter入門教程》、《CI(CodeIgniter)框架進(jìn)階教程》、《Zend FrameWork框架入門教程》、《smarty模板入門基礎(chǔ)教程》及《PHP模板技術(shù)總結(jié)》。

希望本文所述對大家基于ThinkPHP框架的PHP程序設(shè)計有所幫助。

相關(guān)文章

最新評論