当前位置: 首页 > 图文教程 > 网络编程 > PHP > Discuz 模板引擎的封装类代码

PHP
第十一节--重载
第十二节--类的自动加载
第十三节--对象串行化
第十四节--命名空间
第十五节--Zend引擎的发展
一个好用的分页函数
一个MYSQL操作类
Apache2 httpd.conf 中文版
PHP4和PHP5共存于一系统
一些关于PHP的知识
Windows下的PHP5.0详解
Win2003下APACHE+PHP5+MYSQL4+PHPMYADMIN 的简易安装配置
Windows中安装Apache2和PHP4权威指南
PHP5新特性: 更加面向对象化的PHP
PHP初学入门
smarty实例教程
php+mysql实现无限级分类 | 树型显示分类关系
PHP的面试题集
echo(),print(),print_r()之间的区别?
PHP的面试题集,附我的答案和分析(一)

PHP 中的 Discuz 模板引擎的封装类代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 134 ::
收藏到网摘: n/a

需要使用Discuz的模板引擎,于是周未抽了点时间帮忙做了个封装,测试了一下,速度还不错。顺便也拿来用到自己的程序中使用,欢迎大家下载并提出意见
主要功能说明
去掉了 Discuz 语言包的功能
移植 Discuz 模板中所有的功能
添加了自动更新缓存及生命周期功能
在模板中的使用方法跟Discuz的一样,所以就不做多余的说明了,使用前只需要做些简单的设置就可以了
如果需要使用discuz的语言包功能,只要去掉template.class.php第172行注释,并在template.func.php中加上discuz原来的languagevar函数就可以了
点击下载源文件
以下是代码范例:
/**
* 使用示例
*
* @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}
*/
require_once ('classes/template.class.php');
$options = array(
template_dir' => 'templates/', //指定模板文件存放目录
'cache_dir' => 'templates/cache', //指定缓存文件存放目录
'auto_update' => true, //当模板文件有改动时重新生成缓存 [关闭该项会快一些]
'cache_lifetime' => 1, //缓存生命周期(分钟),为 0 表示永久 [设置为 0 会快一些]
);
$template = Template::getInstance(); //使用单件模式实例化模板类
$template->setOptions($options); //设置模板参数
/*
// 可以使用以下三种方法设置参数
$template->setOptions(array('template_dir' => 'templates/default/')); //用于批量设置时使用
$template->set('template_dir', 'templates/default/');
$template->template_dir = 'templates/default/');
*/
$testArr = array('testa' => 'a', 'testb' => 'b');
include($template->getfile('test.htm'));
?>