利用PHP生成静态HTML文档的原理


Posted in PHP onOctober 29, 2012

给出代码:

<?php 
//引入数据库配置文件 
include( dirname(dirname(__FILE__))."\include\config.php" ); /** 
* 
* 将数据库中的文章生成单个HTML文件. 
* @param Date $Date 
* @param Time $Time 
* @param String $Content 
* @param String $Title 
*/ 
function GenerateHTML($Date,$Time,$Content,$Title,$Name){ 
//将日期、时间变量分解成数组 
$GetDateRow = explode("-", $Date); 
$GetTimeRow = explode(":",$Time); 
//得到文件的名字。比如:20121028210632.html 
$FileName = $GetDateRow[0].$GetDateRow[1].$GetDateRow[2].$GetTimeRow[0].$GetTimeRow[1].$GetTimeRow[2].".html"; 
//打开并读取模板内容 
$FP = fopen("tmp.html","r"); 
$Str = fread($FP,filesize("tmp.html")); 
//得到替换后的模板内容 
$Str = str_replace("{Title}",$Title, $Str); 
$Str = str_replace("{Content}", $Content, $Str); 
$Str = str_replace("{Name}", $Name, $Str); 
$Str = str_replace("{Date}", $Date,$Str); 
$Str = str_replace("{Time}", $Time, $Str); 
//关闭文件,减少服务器的压力。 
fclose($FP); 
//将内容写入HTML文件 
$Handle = fopen($FileName,"w"); 
fwrite($Handle,$Str); 
fclose($Handle); 
//小测一下 
//echo "ok,done!"; 
} 
//数据库的操作 
$querysql = "select * from article"; 
$queryset = mysql_query($querysql); 
//循环生成HTML文件。 
while( $row = mysql_fetch_array($queryset) ){ 
GenerateHTML($row['date'],$row['time'],$row['content'],$row['title'],$row['name']); 
}
PHP 相关文章推荐
3
Oct 09 PHP
php 分页类 扩展代码
Jun 11 PHP
discuz程序的PHP加密函数原理分析
Aug 05 PHP
浅析PHP安装扩展mcrypt以及相关依赖项(PHP安装PECL扩展的方法)
Jul 05 PHP
php 启动时报错的简单解决方法
Jan 27 PHP
php密码生成类实例
Sep 24 PHP
跟我学Laravel之安装Laravel
Oct 15 PHP
php中namespace use用法实例分析
Jan 22 PHP
详解PHP文件的自动加载(autoloading)
Feb 04 PHP
win7 wamp 64位 php环境开启curl服务遇到的问题及解决方法
Sep 16 PHP
laravel 实现登陆后返回登陆前的页面方法
Oct 03 PHP
Laravel 5.5 异常处理 &amp; 错误日志的解决
Oct 17 PHP
PHP学习笔记 IIS7下安装配置php环境
Oct 29 #PHP
PHP去掉从word直接粘贴过来的没有用格式的函数
Oct 29 #PHP
php daddslashes()和 saddslashes()有哪些区别分析
Oct 26 #PHP
PHP daddslashes 使用方法介绍
Oct 26 #PHP
Zend Studio去除编辑器的语法警告设置方法
Oct 24 #PHP
真正根据utf8编码的规律来进行截取字符串的函数(utf8版sub_str )
Oct 24 #PHP
php中检查文件或目录是否存在的代码小结
Oct 22 #PHP
You might like
smtp邮件发送一例
2006/10/09 PHP
用来给图片加水印的PHP类
2008/04/09 PHP
php实现汉字验证码和算式验证码的方法
2015/03/07 PHP
php简单实现无限分类树形列表的方法
2015/03/27 PHP
PHP信号量基本用法实例详解
2016/02/12 PHP
javascript Select标记中options操作方法集合
2008/10/22 Javascript
JS模拟面向对象全解(二、类型与赋值)
2011/07/13 Javascript
MyEclipse取消验证Js的两种方法
2013/11/14 Javascript
jquery对table中各数据的增加、保存、删除操作示例
2014/05/14 Javascript
使用javascript实现监控视频播放并打印日志
2015/01/05 Javascript
jQuery中$this和$(this)的区别介绍(一看就懂)
2015/07/06 Javascript
使用jQuery制作Web页面遮罩层插件的实例教程
2016/05/26 Javascript
js中的关联数组与普通数组详解
2016/07/27 Javascript
bootstrap表单按回车会自动刷新页面的解决办法
2017/03/08 Javascript
微信小程序 跳转传参数与传对象详解及实例代码
2017/03/14 Javascript
利用node.js如何搭建一个简易的即时响应服务器
2017/05/28 Javascript
Javascript ES6中对象类型Sets的介绍与使用详解
2017/07/17 Javascript
用React-Native+Mobx做一个迷你水果商城APP(附源码)
2017/12/25 Javascript
傻瓜式解读koa中间件处理模块koa-compose的使用
2018/10/30 Javascript
深入探讨JavaScript的最基本部分之执行上下文
2019/02/12 Javascript
微信小程序进入广告实现代码实例
2019/09/19 Javascript
Python多线程爬虫实战_爬取糗事百科段子的实例
2017/12/15 Python
Python扩展内置类型详解
2018/03/26 Python
Python 中的lambda函数介绍
2018/10/10 Python
Python3网络爬虫中的requests高级用法详解
2019/06/18 Python
python实现将一维列表转换为多维列表(numpy+reshape)
2019/11/29 Python
VSCode基础使用与VSCode调试python程序入门的图文教程
2020/03/30 Python
Expedia法国:全球最大在线旅游公司
2018/09/30 全球购物
Nike加拿大官网:Nike.com (CA)
2019/04/09 全球购物
竞聘演讲稿范文
2014/01/12 职场文书
清正廉洁演讲稿
2014/05/22 职场文书
公务员个人总结
2015/02/12 职场文书
力克胡哲观后感
2015/06/10 职场文书
PyQt5 QThread倒计时功能的实现代码
2021/04/02 Python
Python还能这么玩之只用30行代码从excel提取个人值班表
2021/06/05 Python
mysql left join快速转inner join的过程
2021/06/30 MySQL