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 19 PHP
php 字符过滤类,用于过滤各类用户输入的数据
May 27 PHP
phpMyadmin 用户权限中英对照
Apr 02 PHP
php设计模式 Bridge (桥接模式)
Jun 26 PHP
php输出xml格式字符串(用的这个)
Jul 12 PHP
Laravel框架中实现使用阿里云ACE缓存服务
Feb 10 PHP
在PHP程序中使用Rust扩展的方法
Jul 03 PHP
yii2缓存Caching基本用法示例
Jul 18 PHP
PHP7匿名类用法分析
Sep 26 PHP
thinkPHP中验证码的简单实现方法
Dec 05 PHP
php压缩文件夹最新版
Jul 18 PHP
PHP延迟静态绑定使用方法实例解析
Sep 05 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中读取照片exif信息的方法
2014/08/20 PHP
封装ThinkPHP的一个文件上传方法实例
2014/10/31 PHP
thinkphp3.0输出重复两次的解决方法
2014/12/19 PHP
php中smarty模板条件判断用法实例
2015/06/11 PHP
kindeditor 加入七牛云上传的实例讲解
2017/11/12 PHP
PHP通过curl获取接口URL的数据方法
2018/05/31 PHP
Juqery Html(),append()等方法的Bug解决方法
2010/12/13 Javascript
用js实现小球的自由移动代码
2013/04/22 Javascript
Jquery实现的一种常用高亮效果示例代码
2014/01/28 Javascript
jQuery 如何先创建、再修改、后添加DOM元素
2014/05/20 Javascript
jquery衣服颜色选取插件效果代码分享
2015/08/28 Javascript
JS+DIV+CSS实现的经典标签切换效果代码
2015/09/14 Javascript
js+canvas绘制矩形的方法
2016/01/28 Javascript
深入解析Backbone.js框架的依赖库Underscore.js的作用
2016/05/07 Javascript
vue复合组件实现注册表单功能
2017/11/06 Javascript
JS非行间样式获取函数的实例代码
2018/06/05 Javascript
JavaScript类数组对象转换为数组对象的方法实例分析
2018/07/24 Javascript
angularJs中json数据转换与本地存储的实例
2018/10/08 Javascript
node-red File读取好保存实例讲解
2019/09/11 Javascript
Vue 刷新当前路由的实现代码
2019/09/26 Javascript
Vue使用鼠标在Canvas上绘制矩形
2020/12/24 Vue.js
[00:08]DOTA2勇士令状等级奖励“天外飞星”
2019/05/24 DOTA
Python requests库用法实例详解
2018/08/14 Python
解决在pycharm中显示额外的 figure 窗口问题
2019/01/15 Python
python Django 创建应用过程图示详解
2019/07/29 Python
Python+opencv+pyaudio实现带声音屏幕录制
2019/12/23 Python
聊聊python在linux下与windows下导入模块的区别说明
2021/03/03 Python
Ralph Lauren法国官网:美国高品味时装品牌
2017/12/08 全球购物
美国婴儿和儿童服装购物网站:PatPat
2020/10/01 全球购物
啤酒销售实习自我鉴定
2013/09/24 职场文书
学校门卫工作职责
2013/12/07 职场文书
课前三分钟演讲稿
2014/04/24 职场文书
四风查摆剖析材料
2014/10/10 职场文书
简单租房协议书
2014/10/21 职场文书
2014年检察院个人工作总结
2014/12/09 职场文书
go使用Gin框架利用阿里云实现短信验证码功能
2021/08/04 Golang