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 str_pad 函数使用详解
Jan 13 PHP
Discuz 模板语句分析及知识技巧
Aug 21 PHP
phpmyadmin安装时提示:Warning: require_once(./libraries/common.inc.php)错误解决办法
Aug 18 PHP
PHP抓屏函数实现屏幕快照代码分享
Jan 02 PHP
zf框架的session会话周期及次数限制使用示例
Mar 13 PHP
php 伪静态之IIS篇
Jun 02 PHP
yii2.0实现pathinfo的形式访问的配置方法
Apr 06 PHP
PHP有序表查找之二分查找(折半查找)算法示例
Feb 09 PHP
PHP实现登录验证码校验功能
May 17 PHP
在laravel框架中使用model层的方法
Oct 08 PHP
PHP与Web页面的交互示例详解一
Aug 04 PHP
php提高脚本性能的4个技巧
Aug 18 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 全文搜索和替换的实现代码
2008/07/29 PHP
Laravel 5框架学习之Eloquent (laravel 的ORM)
2015/04/08 PHP
支持中文、字母、数字的PHP验证码
2015/05/04 PHP
php使用preg_match()函数验证ip地址的方法
2017/01/07 PHP
laravel 出现command not found问题的解决方案
2019/10/23 PHP
jQuery select的操作实现代码
2009/05/06 Javascript
javascript面向对象编程代码
2011/12/19 Javascript
jquery点击页面任何区域实现鼠标焦点十字效果
2013/06/21 Javascript
js实现幻灯片播放图片示例代码
2013/11/07 Javascript
js/jquery判断浏览器类型的方法小结
2015/05/12 Javascript
JS实现超精简响应鼠标显示二级菜单代码
2015/09/12 Javascript
bootstrap中使用google prettify让代码高亮的方法
2016/10/21 Javascript
JS数组排序方法实例分析
2016/12/16 Javascript
Angular下H5上传图片的方法(可多张上传)
2017/01/09 Javascript
canvas实现粒子时钟效果
2017/02/06 Javascript
利用Chrome DevTools直接调试Node.js和JavaScript的方法详解(并行)
2017/02/16 Javascript
jQuery实现切换隐藏与显示同时切换图标功能
2017/10/29 jQuery
vue非父子组件通信问题及解决方法
2018/06/11 Javascript
Vue.js的复用组件开发流程完整记录
2018/11/29 Javascript
JavaScript学习笔记之数组基本操作示例
2019/01/09 Javascript
vue的$http的get请求要加上params操作
2020/11/12 Javascript
python将ip地址转换成整数的方法
2015/03/17 Python
在Python中使用MongoEngine操作数据库教程实例
2019/12/03 Python
python 实现PIL模块在图片画线写字
2020/05/16 Python
python os模块在系统管理中的应用
2020/06/22 Python
Python实现封装打包自己写的代码,被python import
2020/07/12 Python
Python之字典添加元素的几种方法
2020/09/30 Python
ECCO爱步官方旗舰店:丹麦鞋履品牌
2018/01/02 全球购物
汉语言文学职业规划
2014/02/14 职场文书
2014年社会实践活动总结范文
2014/04/29 职场文书
乡镇创先争优活动总结
2014/08/28 职场文书
小学优秀教师材料
2014/12/15 职场文书
音乐课外活动总结
2015/05/09 职场文书
Mysql文件存储图文详解
2021/06/01 MySQL
实例详解Python的进程,线程和协程
2022/03/13 Python
Redis中key的过期删除策略和内存淘汰机制
2022/04/12 Redis