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

PHP
PHP日期时间函数的高级应用技巧
php 无限级 SelectTree 类
简单的php 验证图片生成函数
php print EOF实现方法
php session 错误
PHP的单引号和双引号 字符串效率
php 字符过滤类,用于过滤各类用户输入的数据
php 字符转义 注意事项
PHP mail 通过Windows的SMTP发送邮件失败的解决方案
PHP XML备份Mysql数据库
很好用的PHP数据库类
phpMyAdmin 安装及问题总结
UCenter Home二次开发指南
PHP5.2中date()函数显示时间与北京时间相差8小时的解决办法
php $_ENV为空的原因分析
php Undefined index的问题
PHP 服务器配置(使用Apache及IIS两种方法)
一个很不错的PHP翻页类
php 正则 过滤html 的超链接
PHP 文件扩展名 获取函数

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 221 ::
收藏到网摘: 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'));
?>