利用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 相关文章推荐
phpMyAdmin下载、安装和使用入门教程
May 31 PHP
php 代码优化的42条建议 推荐
Sep 25 PHP
ThinkPHP实现多数据库连接的解决方法
Jul 01 PHP
如何让thinkphp在模型中自动完成session赋值小教程
Sep 05 PHP
简单谈谈PHP vs Node.js
Jul 17 PHP
PHP下使用mysqli的函数连接mysql出现warning: mysqli::real_connect(): (hy000/1040): ...
Feb 14 PHP
iOS自定义提示弹出框实现类似UIAlertView的效果
Nov 16 PHP
PHP jQuery+Ajax结合写批量删除功能
May 19 PHP
Laravel使用支付宝进行支付的示例代码
Aug 16 PHP
PHP实现微信申请退款功能
Oct 01 PHP
浅谈laravel-admin form中的数据,在提交后,保存前,获取并进行编辑
Oct 21 PHP
PHP 对象继承原理与简单用法示例
Apr 21 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
苏联队长,苏联超人蝙蝠侠,这些登场的“山寨”英雄真的很严肃
2020/04/09 欧美动漫
小偷PHP+Html+缓存
2006/11/25 PHP
php minixml详解
2008/07/19 PHP
PHP关联数组的10个操作技巧
2013/01/21 PHP
PHP实现限制IP访问及提交次数的方法详解
2017/07/17 PHP
Laravel中Facade的加载过程与原理详解
2017/09/22 PHP
QUnit jQuery的TDD框架
2010/11/04 Javascript
jQuery使用zTree插件实现树形菜单和异步加载
2016/02/25 Javascript
AngularJs学习第八篇 过滤器filter创建
2016/06/08 Javascript
js中利用cookie实现记住密码功能
2020/08/20 Javascript
原生js实现倒计时--2018
2017/02/21 Javascript
使用vue构建移动应用实战代码
2017/08/02 Javascript
JS Input里添加小图标的两种方法
2017/11/11 Javascript
VSCode中如何利用d.ts文件进行js智能提示
2018/04/13 Javascript
Angular使用动态加载组件方法实现Dialog的示例
2018/05/11 Javascript
Vuex 使用及简单实例(计数器)
2018/08/29 Javascript
js实现数字滚动特效
2019/12/16 Javascript
vue移动端下拉刷新和上滑加载
2020/10/27 Javascript
JavaScript 中的执行上下文和执行栈实例讲解
2021/02/25 Javascript
研究Python的ORM框架中的SQLAlchemy库的映射关系
2015/04/25 Python
python压缩文件夹内所有文件为zip文件的方法
2015/06/20 Python
基于python的Tkinter编写登陆注册界面
2017/06/30 Python
R vs. Python 数据分析中谁与争锋?
2017/10/18 Python
python基于SMTP协议发送邮件
2019/05/31 Python
pymysql 开启调试模式的实现
2019/09/24 Python
python多进程(加入进程池)操作常见案例
2019/10/21 Python
Python如何在main中调用函数内的函数方式
2020/06/01 Python
python 实现性别识别
2020/11/21 Python
美国在线打印网站:Overnight Prints
2018/10/11 全球购物
阿里巴巴Oracle DBA笔试题答案-备份恢复类
2013/11/20 面试题
物流专业求职计划书
2014/01/10 职场文书
医疗器械售后服务承诺书
2014/05/21 职场文书
应届毕业生自荐信
2015/03/04 职场文书
道歉短信大全
2015/05/12 职场文书
毕业班工作总结
2015/08/10 职场文书
vue 把二维或多维数组转一维数组
2022/04/24 Vue.js