Discuz 模板引擎的封装类代码

yipeiwu_com6年前PHP代码库

主要功能说明

去掉了 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可生成缩略图的文件上传类及其用法。分享给大家供大家参考。具体实现方法如下: 类文件调用方法如下: 复制代码 代码如下:<?php if ($_GET[...

php基于curl重写file_get_contents函数实例

本文实例讲述了php基于curl重写file_get_contents函数。分享给大家供大家参考,具体如下: file_get_contents在连接不上的时候会提示Connection...

php绘图之在图片上写中文和英文的方法

本文实例讲述了php绘图之在图片上写中文和英文的方法。分享给大家供大家参考。具体如下: 第一种方法,只能写英文,中文会出现乱码 复制代码 代码如下:<?php //1、创建...

PHP实现批量检测网站是否能够正常打开的方法

PHP实现批量检测网站是否能够正常打开的方法

本文实例讲述了PHP实现批量检测网站是否能够正常打开的方法。分享给大家供大家参考,具体如下: curl_setopt函数是php中一个重要的函数,它可以模仿用户的一些行为,如模仿用户登录...

PHP中的string类型使用说明

注意:PHP没有对string的长度做限制。唯一限制的就是PHP在计算机中的可用内存(php.ini文件中的memory_limit变量的值) 限定字符串范围的方法有4中: 1、单引号;...