Yii使用smarty模板

来源:互联网 发布:后氧传感器数据偏高 编辑:程序博客网 时间:2024/05/22 17:05

在protected下的extensions文件夹放入smarty模板插件,并建立CSmarty类文件,内容如下

require_once(Yii::getPathOfAlias('application.extensions.smarty').DIRECTORY_SEPARATOR.'Smarty.class.php');      define('SMARTY_VIEW_DIR', Yii::getPathOfAlias('application.views'));           class CSmarty extends Smarty {          const DIR_SEP = DIRECTORY_SEPARATOR;          function __construct() {              parent::__construct();                           $this->template_dir = SMARTY_VIEW_DIR;              $this->compile_dir = SMARTY_VIEW_DIR.self::DIR_SEP.'template_c';              $this->caching = true;              $this->cache_dir = SMARTY_VIEW_DIR.self::DIR_SEP.'cache';              $this->left_delimiter  =  '<!--{';              $this->right_delimiter =  '}-->';              $this->cache_lifetime = 3600;          }          function init() {}      }  

然后建立samrty所需的template_c,cache等文件夹。

接下来是配置部分

打开protected/config/main.php在components数组中加入


'smarty'=>array(    'class'=>'application.extensions.CSmarty',),

最后在action中直接用Yii::app()->smarty就可以试用smarty了。

如果每次在action中使用Yii::app()->smarty比较麻烦的话,可以在components下的Controller中可以加入

protected $smarty = '';protected function init() {       $this->smarty = Yii::app()->smarty; }

然后在action中就直接可以用$this->smarty使用smarty了。


原创粉丝点击