thinkphp 模板驱动

模板引擎驱动完成了第三方模板引擎的支持,通过定义模板引擎驱动,我们可以支持Smarty、TemplateLite、SmartTemplate和EaseTemplate等第三方模板引擎。

默认的模板引擎驱动的命名空间位于 ThinkTemplateDriver,需要实现的接口方法只有一个 fetch($templateFile,$var) 用于渲染模板文件并输出。

下面是一个Smarty模板引擎扩展的示例:

  1. namespace ThinkTemplateDriver;
  2. class Smarty {
  3. /**
  4. * 渲染模板输出
  5. * @access public
  6. * @param string $templateFile 模板文件名
  7. * @param array $var 模板变量
  8. * @return void
  9. */
  10. public function fetch($templateFile,$var) {
  11. $templateFile = substr($templateFile,strlen(THEME_PATH));
  12. vendor('Smarty.Smarty#class');
  13. $tpl = new Smarty();
  14. $tpl->caching = C('TMPL_CACHE_ON');
  15. $tpl->template_dir = THEME_PATH;
  16. $tpl->compile_dir = CACHE_PATH ;
  17. $tpl->cache_dir = TEMP_PATH ;
  18. if(C('TMPL_ENGINE_CONFIG')) {
  19. $config = C('TMPL_ENGINE_CONFIG');
  20. foreach ($config as $key=>$val){
  21. $tpl->{$key} = $val;
  22. }
  23. }
  24. $tpl->assign($var);
  25. $tpl->display($templateFile);
  26. }
  27. }

如果要使用Smarty模板引擎的话,只需要配置直线电机价格

  1. 'TMPL_ENGINE_TYPE'=>'Smarty',
  2. 'TMPL_ENGINE_CONFIG'=>array(
  3. 'plugins_dir'=>'./Application/Smarty/Plugins/',
  4. ),
原文地址:https://www.cnblogs.com/furuihua/p/11842844.html