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 常见郁闷问题答解
Nov 25 PHP
php创建多级目录代码
Jun 05 PHP
PHP运行时强制显示出错信息的代码
Apr 20 PHP
一个PHP缓存类代码(附详细说明)
Jun 09 PHP
php中计算程序运行时间的类代码
Nov 03 PHP
win7+apache+php+mysql环境配置操作详解
Jun 10 PHP
ThinkPHP让分页保持搜索状态的方法
Jul 02 PHP
php使用NumberFormatter格式化货币的方法
Mar 21 PHP
smarty模板判断数组为空的方法
Jun 10 PHP
PHP根据session与cookie用户登录状态操作类的代码
May 13 PHP
Zend Framework上传文件重命名的实现方法
Nov 25 PHP
Yii2框架中使用PHPExcel导出Excel文件的示例
Aug 09 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的$_SERVER[SERVER_NAME]
2017/02/04 PHP
Laravel框架自定义验证过程实例分析
2019/02/01 PHP
javascript+xml技术实现分页浏览
2008/07/27 Javascript
jquery加载图片时以淡入方式显示的方法
2015/01/14 Javascript
Node.js中的流(Stream)介绍
2015/03/30 Javascript
node.js操作mongodb学习小结
2015/04/25 Javascript
JavaScript判断表单中多选框checkbox选中个数的方法
2015/08/17 Javascript
深入理解angularjs过滤器
2016/05/25 Javascript
ionic 上拉菜单(ActionSheet)实例代码
2016/06/06 Javascript
浅谈在js传递参数中含加号(+)的处理方式
2016/10/11 Javascript
全面解析node 表单的图片上传
2016/11/21 Javascript
addEventListener()与removeEventListener()解析
2017/04/20 Javascript
详解给Vue2路由导航钩子和axios拦截器做个封装
2018/04/10 Javascript
微信小程序云开发之模拟后台增删改查
2019/05/16 Javascript
Vue 中使用富文本编译器wangEditor3的方法
2019/09/26 Javascript
[55:25]2018DOTA2亚洲邀请赛3月29日 小组赛A组 VG VS OG
2018/03/30 DOTA
python迭代器的使用方法实例
2013/11/21 Python
python中zip和unzip数据的方法
2015/05/27 Python
Python进度条实时显示处理进度的示例代码
2018/01/30 Python
python正向最大匹配分词和逆向最大匹配分词的实例
2018/11/14 Python
浅谈keras 的抽象后端(from keras import backend as K)
2020/06/16 Python
OpenCV实现机器人对物体进行移动跟随的方法实例
2020/11/09 Python
基于OpenCV的网络实时视频流传输的实现
2020/11/15 Python
浅析rem和em和px vh vw和% 移动端长度单位
2016/04/28 HTML / CSS
美国特价机票专家:Airfarewatchdog
2018/01/24 全球购物
Carter’s OshKosh加拿大:购买婴幼儿服装和童装
2018/11/27 全球购物
橄榄树药房:OLIVEDA
2019/09/01 全球购物
美国电子产品购物网站:BuyDig.com
2020/06/17 全球购物
htmlentities() 和 htmlspecialchars()有什么区别
2015/07/01 面试题
教师党的群众路线学习心得体会
2014/11/04 职场文书
银行稽核岗位职责
2015/04/13 职场文书
2015年计算机教师工作总结
2015/07/22 职场文书
2016年端午节红领巾广播稿
2015/12/18 职场文书
Python数据分析之pandas函数详解
2021/04/21 Python
详解Python requests模块
2021/06/21 Python
直播实况, OMG破敌三路五十分钟大战神技局摩托车
2022/04/01 DOTA