在CI中使用扩展的Discuz模板引擎

题外话:
不管别人说CI好不好,但我是坚决拥护,
首先不能兼容php4的frame坚决不用,
所以爱屋及乌也喜欢上了Fleaphp,逻辑有点混乱了。
===================================================
华丽分割线
===================================================

ci本身没有模板引擎,当然你可以很轻松的在里面扩展第三方的引擎,
而Discuz在模板方面的技术非常成熟,标签简单,上手特别容易,
通过几天的将dz的模板引擎从内核中单独分离出来,而且扩充了缓存的功能,经过测试,
非常完美,先分享出来给大伙。
贴一下内核类的部分代码
复制PHP内容到剪贴板
PHP代码:
/**
     * 模板参数信息
     *
     * @var array
     */
    var $_options = array();
        //2008-7-5
        //引入CI
        var $CI;


    /**
     * 构造方法
     * 适用于php4 和php5
     * @return void
     */
    function __construct()
    {
                return DzTemplate();
    }


        function DzTemplate()
        {
                //初始化
                $this->CI =& get_instance();
        $this->_options = array(
            'template_dir' => SMARTY_DIR, //模板文件所在目录
            'cache_dir' => SMARTY_DIR .'/cache/', //缓存文件存放目录
            'auto_update' => true, //当模板文件改动时是否重新生成缓存
            'cache_lifetime' => 0, //缓存生命周期(分钟),为 0 表示永久
        );
        }

在初始化下面的options 里设置模板和缓存文件目录,缓存周期等。

将附件解压到你的项目文件中,直接使用,
DZ模板类文件在libraries
模板目录跟CI的默认模板目录一样都是views
还有一个简单的测试文件在controllers目录,

至于模板标签的制作,请各位自己参照dz的模板标签用法。

[ 本帖最后由 blue2004 于 2008-7-8 22:39 编辑 ]

作者: blue2004   发布时间: 2008-07-05

虽然用ci时不想用模板引擎,还是要顶一下。

作者: kissmumu   发布时间: 2008-07-06

这个一定要支持!感谢楼主分享的类库!

作者: Hex   发布时间: 2008-07-06

�@不是拿我的��改的�幔�BS一下。。。

http://www.tblog.com.cn/archives/659
复制内容到剪贴板
代码:
/**
* 使用示例
*
* @copyright Copyright (c) 2007-2008 (http://www.tblog.com.cn)
* @author Akon(番茄红了)
* @license PHP Version 3.0 {@link http://www.php.net/license/3_0.txt}
*/
复制内容到剪贴板
代码:
/**
* 模板类 - 使用 Discuz 模板引擎解析
* Author:路过人间
* QQ:80392625
* Email: pearphp@gmail.com
* @license PHP Version 3.0 {@link http://www.php.net/license/3_0.txt}
*/

作者: aultoale   发布时间: 2008-07-08

引用:
将附件解压到你的项目文件中,直接使用,
DZ模板类文件在libraries
附件何来?

作者: saku87   发布时间: 2008-07-09

就是,附件呢...就贴那段代码不如不贴~

作者: xyiyo   发布时间: 2008-07-09

dfsdfsdf

作者: simutu   发布时间: 2013-04-15