用PHP实现的生成静态HTML速度快类库

2018-09-07 14:22

阅读:229

  复制代码 代码如下:
<?php
///////////////////////////////////////////////////////////////////////////////
//
//张树林-慧佳工作室
//
//ModuleName:woods-bhtml.php
//Abstract:生成静态HTML处理程序尾底
//Version:2.0
//Date1006-11-25
//Author:woods·zhang
//Website:
//Copyright1001-1006,HoojarstudioAllRightsReserved
//
//版权1001-1006,慧佳工作室所有版权保护

//Thesoftwareforfreesoftware,allowinguse,copy,
//modifyanddistributethesoftwareandfiles.Any
//useofthissoftwaremustplaceacopyofallthe
//abovecopyrightnotice.BythesoftwareHuijiastudio
//maintenance,ifyouhaveanyqueriespleasecontactus.
//Thankyou.
//
//此软件为自由软件,允许使用、拷贝、修改、分发本软件及其文档。
//任何使用此软件的地方都得出现以上版权通告所有副本。此软件由
//慧佳工作室维护,如果您有什么疑问请与我们联系。谢谢使用。
//
///////////////////////////////////////////////////////////////////////////////
//此文件只能加载在程序的最尾
/*________________生成HTML文件______________________beign________________________________*/
if($make_html)
{
$buffer=ob_get_flush();
if($go_html)//是否直接转到HTML文件显示还是PHP读得内容输出(0:php读内容输出1:直接转)
{
/*__________处理因生成了HTML文件而产生的种径问题____________________begin_______________*/
$search=array(
/(src=action=href=ajaxRead\()\/ie,
/\.\.\./e,
/\.\/\./e,
/\.\.\/http:\/\//ies,
/\.\.\/#/,
/\\.\/e,
/\.\.\/javascript:/ies);

$replace=array(
\\1\../,
..,
.,

#,
\..\,
javascript:);
$buffer=preg_replace($search,$replace,$buffer);
/*__________处理因生成了HTML文件而产生的种径问题____________________end_______________*/
}

$fp=fopen(HTML_FILE,w);
if($fp)
{
fwrite($fp,$buffer);
fclose($fp);
}
}
/*________________生成HTML文件______________________beign________________________________*/
?>

<?php
///////////////////////////////////////////////////////////////////////////////
//
//张树林-慧佳工作室
//
//ModuleName:woods-thtml.php
//Abstract:生成静态HTML处理程序头
//Version:2.0
//Date1006-11-25
//Author:woods·zhang
//Website:
//Email:hoojar@53.com
//MSN:hoojar@hotmail.com
//Copyright1001-1006,HoojarstudioAllRightsReserved
//
//版权1001-1006,慧佳工作室所有版权保护

//Thesoftwareforfreesoftware,allowinguse,copy,
//modifyanddistributethesoftwareandfiles.Any
//useofthissoftwaremustplaceacopyofallthe
//abovecopyrightnotice.BythesoftwareHuijiastudio
//maintenance,ifyouhaveanyqueriespleasecontactus.
//Thankyou.
//
//此软件为自由软件,允许使用、拷贝、修改、分发本软件及其文档。
//任何使用此软件的地方都得出现以上版权通告所有副本。此软件由
//慧佳工作室维护,如果您有什么疑问请与我们联系。谢谢使用。
//
///////////////////////////////////////////////////////////////////////////////
//此文件只能加载在程序的开头
ob_start();
/*___________判断是否已生成了HTML文件,若生成了则跳转到HTML页面___________begin__________*/
$qstring=isset($_SERVER[QUERY_STRING])?$_SERVER[QUERY_STRING]:;
if($qstring)//程序加了GET请求的处理
{
$qstring=str_replace(=,,$qstring);
define(HTML_FILE,./h/{$efilename}-{$qstring}.html);
}
else
{
define(HTML_FILE,./h/{$efilename}.html);
}
if(file_exists(HTML_FILE))
{
$lcft=filemtime(HTML_FILE);//lastcreatefiletime
if(($lcft+3600)>time())//判断上次生成HTML文件是否以过去1时间,若没有才直接输出文件内容
{
if($show_html)//是否以HTML静态页面展示(0不以HTML展显1以html展显)
{
if($go_html)//是否直接转到HTML文件显示还是PHP读得内容输出(0:php读内容输出1:直接转)
{
header(Location:.HTML_FILE);//直接转
}
else
{
echo(file_get_contents(HTML_FILE));//读出展显
}
exit(0);
}
}
}
/*___________判断是否已生成了HTML文件,若生成了则跳转到HTML页面___________end__________*/
?>

<?php
///////////////////////////////////////////////////////////////////////////////
//
//张树林-慧佳工作室
//
//ModuleName:index.php
//Abstract:首页信息
//Version:1.0
//Date2006-11-7
//Author:woods·zhang
//Website:
//Cemail:hoojar@163.com
//MSN:hoojar@hotmail.com
//Copyright2001-2006,HoojarstudioAllRightsReserved
//
//版权2001-2006,慧佳工作室所有版权保护

//Thesoftwareforfreesoftware,allowinguse,copy,
//modifyanddistributethesoftwareandfiles.Any
//useofthissoftwaremustplaceacopyofallthe
//abovecopyrightnotice.BythesoftwareHuijiastudio
//maintenance,ifyouhaveanyqueriespleasecontactus.
//Thankyou.
//
//此软件为自由软件,允许使用、拷贝、修改、分发本软件及其文档。
//任何使用此软件的地方都得出现以上版权通告所有副本。此软件由
//慧佳工作室维护,如果您有什么疑问请与我们联系。谢谢使用。
//
///////////////////////////////////////////////////////////////////////////////
require(woods-thtml.php);//生成HTML处理头
//if(count($_GET)<1&&count($_POST)<1){require(woods-thtml.php);}//生成HTML处理头

require({$exec_file});//注册语言定义文件
foreach($langas$key=>$value)
{
$atpl[strtoupper($key)._LANG]=$value;
}
/*____________________________________列表常识向上走的项__________________end_____________________*/
include(woods-templates.php);
$tpl=newWoodsTpl(./templates/);
$tpl->require_tpl(header.html);
$tpl->set_file();
$tpl->block(EBCORP,$scorp);
$tpl->block(NEWS,$news);

$tpl->block(PRODUCT,$product);
$tpl->block(EBPNAME_MSG,$spname);

$tpl->block(LORE,$lore);
$tpl->require_tpl(footer.html);
$tpl->parse($atpl,true);
$tpl=NULL;
/*________________模板操作_________________________end___________________________________*/
require(woods-bhtml.php);//生成HTML处理尾
?>


评论


亲,登录后才可以留言!