找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 817|回复: 0
打印 上一主题 下一主题

让ThinkPHP的模板引擎达到最佳效率的方法详解

[复制链接]

2588

主题

2588

帖子

7694

积分

论坛元老

Rank: 8Rank: 8

积分
7694
跳转到指定楼层
楼主
发表于 2018-2-14 05:27:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

            本文分析了让ThinkPHP的模板引擎达到最佳效率的方法。分享给大家供大家参考,具体如下:
默认情况下ThinkPHP框架系统默认使用的模板引擎是内置模板引擎。内置模板引擎支持模板文件中采用php原生态代码和模板标签的混合使用。
ThinkPHP官方开发文档说,这种默认的内置模板引擎的性能是高效的,但还不是最佳的。要使模板引擎的性能达到最佳效率,就要使用PHP本身作为模板引擎
使用PHP本身作为模板引擎其实很简单,只需在项目的配置文件Conf/config.php上配置:
'TMPL_ENGINE_TYPE' =>'PHP'
采用PHP本身作为模板引擎后,意味着你将不能再使在模板文件上使用系统默认使用的模板引擎的模板标签,你只能使用原生态的php代码。
下面将通过实例来演示一下,采用PHP本身作为模板引擎后,如何在模板上操作php代码。
下载wblog3.1.2_3博客程序并安装并安装(你也可以自建项目)
首先配置项目W3note\Conf\config.php文件添加一项配置项:
'PHP',
...
);
?>
然后把控制器\W3note\Lib\Action\IndexAction.class.php和对应模板\W3note\Tpl\Index\index.html的代码清空以待不同的调试之用。
好了,基础工作已经做好了,接下来是调试记录:
1、在模板上使用php原生态代码
IndexAction.class.php控制器代码
display();
}
}
index.html模板代码:
使用原生态的php代码



输出:
$title='网志博客'; echo $title;
在模板上把""换成后,结果无法解释变量,说明不支持标签。
2、在模板上直接使用查询语句
控制器代码同1,模板代码如下
使用原生态的php代码

find();
echo $vo['title'];
?>

输出:
欢迎使用WBlog博客程序
控制器在一边呆着似乎什么也没做,模板上竟然可以这样写,实在太灵活了!
3、在模板上调用控制器分配的查询结果
IndexAction.class.php控制器代码
find();
  $this->assign('vo', $vo);
  $this->display();
}
}
模板index.html代码
使用原生态的php代码



输出:
欢迎使用WBlog博客程序
这种情况和系统默认使用的模板引擎时写法没什么两样。
4、在模板上调用项目函数库的函数
控制器代码同1,模板代码如下
使用原生态的php代码



输出:
af10ef457ed637b91955369297b8e640
摈弃了系统默认模板引擎笨拙(相对来讲)的标签语法,函数的调用是如此简单!
总结:在ThinkPHP中使用PHP本身作为模板引擎,可以使模板引擎的性能达到最佳效率,在模板上需要使用原生态的php语法,写法比较活活,但是系统默认模板引擎的模板标签将失去作用。
更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》、《smarty模板入门基础教程》及《PHP模板技术总结》。
希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。
            
            
您可能感兴趣的文章:
  • ThinkPHP模板引擎之导入资源文件方法详解
  • ThinkPHP使用smarty模板引擎的方法
  • ThinkPHP在Cli模式下使用模板引擎的方法
  • thinkPHP模板引擎用法示例
  • ThinkPHP 模板引擎使用详解
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端