真的骄傲梦想家园
专业源于兴趣和努力

  Zend Framework的view用过一小会就不想用了,还是喜欢用Smarty

  首先下载Smarty,然后解压,把里面的libs文件夹及其内容COPY到上次新建的test工程的library目录下,我喜欢改一下名字,把它重命名为Smarty

  打开application.ini文件,添加一行配置resources.frontController.noViewRenderer = 1,用来关闭Zend Framework默认的view

  添加Smarty的配置信息

smarty
[staging : production]
smarty.class_path 
= "Smarty/Smarty.class.php"
smarty.left_delimiter 
= "<*"
smarty.right_delimiter 
= "*>"
smarty.template_dir 
= "template"
smarty.compile_dir 
= "compile"
smarty.cache_dir 
= "cache"
smarty.cache_lifetime 
= 600
smarty.caching 
= 1

 

  打开Bootstrap.php文件,添加一个函数用于初始化Smarty

 

_initView
    public function _initView(){
        
$config = new Zend_Config_Ini(CONFIG_FILE_PATH, 'staging');
        
require_once $config->smarty->class_path;

        
$smarty = new Smarty();
        
$smarty->left_delimiter = $config->smarty->left_delimiter;
        
$smarty->right_delimiter = $config->smarty->right_delimiter;
        
$smarty->template_dir = $config->smarty->template_dir;
        
$smarty->compile_dir = $config->smarty->compile_dir;
        
$smarty->cache_dir = $config->smarty->cache_dir;
        
$smarty->cache_lifetime = $config->smarty->cache_lifetime;
        
$smarty->caching = $config->smarty->caching;

        Zend_Registry
::set('smarty', $smarty);
    }

 

到此Smarty就整合好了。再贴一点点使用的代码吧

 

Code
$this->smarty = Zend_Registry::get('smarty');
$this->smarty->assign('bloguser', $this->bloguser);
$this->smarty->display($template);

 

网上有个整合的方法是把Smarty当成Zend Framework的一个插件,我觉得挺麻烦的,本人比较懒,还是喜欢现在这样子运用,呵呵。

posted on 2009-09-15 10:28  真的骄傲  阅读(1110)  评论(0编辑  收藏  举报