Discuz 模板引擎的封装类代码


Posted in PHP onJuly 18, 2008

主要功能说明

去掉了 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'));
?>

PHP 相关文章推荐
PHP如何透过ODBC来存取数据库
Oct 09 PHP
福利彩票幸运号码自动生成器
Oct 09 PHP
超强分页类2.0发布,支持自定义风格,默认4种显示模式
Jan 02 PHP
ThinkPHP中处理表单中的注意事项
Nov 22 PHP
基于OpenCart 开发支付宝,财付通,微信支付参数错误问题
Oct 01 PHP
Symfony2实现从数据库获取数据的方法小结
Mar 18 PHP
XHProf报告字段含义的解析
May 17 PHP
PHP实现页面静态化的超简单方法
Sep 06 PHP
jquery+thinkphp实现跨域抓取数据的方法
Oct 15 PHP
php无限级分类实现方法分析
Oct 19 PHP
PHP用户注册邮件激活账户的实现代码
May 31 PHP
laravel框架模型中非静态方法也能静态调用的原理分析
Nov 23 PHP
PHP令牌 Token改进版
Jul 18 #PHP
php下intval()和(int)转换使用与区别
Jul 18 #PHP
PHP入门学习的几个不错的实例代码
Jul 13 #PHP
php header()函数使用说明
Jul 10 #PHP
php下实现一个阿拉伯数字转中文数字的函数
Jul 10 #PHP
兼容PHP5的PHP目录管理函数库
Jul 10 #PHP
php 防止单引号,双引号在接受页面转义
Jul 10 #PHP
You might like
php网页后退不再出现过期
2007/03/08 PHP
PHP中使用数组指针函数操作数组示例
2014/11/19 PHP
php查询ip所在地的方法
2014/12/05 PHP
php上传文件并存储到mysql数据库的方法
2015/03/16 PHP
PHP5.2中PDO的简单使用方法
2016/03/25 PHP
JavaScript Event学习第七章 事件属性
2010/02/07 Javascript
js解决弹窗问题实现班级跳转DIV示例
2014/01/06 Javascript
javascript动态向网页中添加表格实现代码
2014/02/19 Javascript
用IE重起计算机或者关机的示例代码
2014/03/10 Javascript
JS 打印界面的CSS居中代码适用所有浏览器
2014/03/19 Javascript
教你用AngularJS框架一行JS代码实现控件验证效果
2014/06/23 Javascript
详解Backbone.js框架中的模型Model与其集合collection
2016/05/05 Javascript
javascript的replace方法结合正则使用实例总结
2016/06/16 Javascript
JS 调试中常见的报错问题解决方法
2017/05/20 Javascript
iscroll-probe实现下拉刷新和下拉加载效果
2017/06/28 Javascript
vue拦截器实现统一token,并兼容IE9验证功能
2018/04/26 Javascript
vue父子组件的通信方法(实例详解)
2019/11/10 Javascript
基于vue.js实现购物车
2020/01/15 Javascript
JavaScript Dom实现轮播图原理和实例
2021/02/19 Javascript
Python 中 Meta Classes详解
2016/02/13 Python
怎样使用Python脚本日志功能
2016/08/14 Python
基于python脚本实现软件的注册功能(机器码+注册码机制)
2016/10/09 Python
Python中常用信号signal类型实例
2018/01/25 Python
Python代码实现删除一个list里面重复元素的方法
2019/04/02 Python
HTML5 Web Workers之网站也能多线程的实现
2013/04/24 HTML / CSS
Lands’ End官网:经典的美国生活方式品牌
2016/08/14 全球购物
日本高端护肤品牌:Tatcha
2016/08/29 全球购物
安全事故检讨书
2014/01/18 职场文书
文明工地标语
2014/06/16 职场文书
机电一体化毕业生自荐信
2014/06/19 职场文书
土地租赁意向书
2014/07/30 职场文书
关于运动会的广播稿(10篇)
2014/09/12 职场文书
2014年店长工作总结
2014/11/17 职场文书
经济纠纷起诉状
2015/05/20 职场文书
记一次Mysql不走日期字段索引的原因小结
2021/10/24 MySQL
Android开发EditText禁止输入监听及InputFilter字符过滤
2022/06/10 Java/Android