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 相关文章推荐
dede全站URL静态化改造[070414更正]
Apr 17 PHP
《PHP编程最快明白》第四讲:日期、表单接收、session、cookie
Nov 01 PHP
php实现用户在线时间统计详解
Oct 08 PHP
php中可能用来加密字符串的函数[base64_encode、urlencode、sha1]
Jan 16 PHP
关于mysql字符集设置了character_set_client=binary 在gbk情况下会出现表描述是乱码的情况
Jan 06 PHP
php代码中使用换行及(\n或\r\n和br)的应用
Feb 02 PHP
获取PHP警告错误信息的解决方法
Jun 03 PHP
解析在zend Farmework下如何创立一个FORM表单
Jun 28 PHP
PHP检测链接是否存在的代码实例分享
May 06 PHP
Yii2基于Ajax自动获取表单数据的方法
Aug 10 PHP
PHP之认识(二)关于Traits的用法详解
Apr 11 PHP
Laravel实现ApiToken认证请求
Oct 14 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
慎用preg_replace危险的/e修饰符(一句话后门常用)
2013/06/19 PHP
Firebug 字幕文件JSON地址获取代码
2009/10/28 Javascript
js动态设置div的值下例子
2013/10/29 Javascript
js获取对象为null的解决方法
2013/11/21 Javascript
JS不间断向上滚动效果代码
2013/12/25 Javascript
解决JS中乘法的浮点错误的方法
2014/01/03 Javascript
使用JS获取当前地理位置方法汇总
2014/12/18 Javascript
jquery+json实现数据二级联动的方法
2015/11/28 Javascript
jquery ztree实现模糊搜索功能
2016/02/25 Javascript
Node.js中process模块常用的属性和方法
2016/12/13 Javascript
jQuery验证表单格式的使用方法
2017/01/10 Javascript
js实现自动图片轮播代码
2017/03/22 Javascript
vue.js 嵌套循环、if判断、动态删除的实例
2018/03/07 Javascript
Bootstrap导航菜单点击后无法自动添加active的处理方法
2018/08/10 Javascript
layui中table表头样式修改方法
2018/08/15 Javascript
Angular+ionic实现折叠展开效果的示例代码
2020/07/29 Javascript
利用js canvas实现五子棋游戏
2020/10/11 Javascript
js中复选框的取值及赋值示例详解
2020/10/18 Javascript
python中常用的各种数据库操作模块和连接实例
2014/05/29 Python
python静态方法实例
2015/01/14 Python
python字典get()方法用法分析
2015/04/17 Python
python登录pop3邮件服务器接收邮件的方法
2015/04/30 Python
Python函数式编程指南(一):函数式编程概述
2015/06/24 Python
完美解决在oj中Python的循环输入问题
2018/06/25 Python
Python单元测试与测试用例简析
2019/11/09 Python
Matplotlib使用Cursor实现UI定位的示例代码
2020/03/12 Python
django执行数据库查询之后实现返回的结果集转json
2020/03/31 Python
Python 的 __str__ 和 __repr__ 方法对比
2020/09/02 Python
Python程序慢的重要原因
2020/09/04 Python
python实现简单的学生管理系统
2021/02/22 Python
CSS3中的5个有趣的新技术
2009/04/02 HTML / CSS
世界上最大的罕见唱片、CD和音乐纪念品网上商店:991.com
2018/05/03 全球购物
英文简历中的自我评价用语
2013/12/09 职场文书
人力资源部副职的竞聘演讲稿
2014/01/07 职场文书
商铺租赁意向书
2014/04/01 职场文书
python Tkinter的简单入门教程
2021/04/11 Python