解析PHP生成静态html文件的三种方法


Posted in PHP onJune 18, 2013

本文将介绍Php 生成静态html文件的三种方法 。
1,下面使用模版的一个方法!

<?php 
$fp = fopen ("templets.html","a"); 
if ($fp){ 
$fup = fread ($fp,filesize("templets.html")); 
$fp2 = fopen ("html.shtml","w"); 
if ($fwrite ($fp2,$fup)){ 
$fclose ($fp); 
$fcolse ($fp2); 
die ("写入模板成功"); 
} else { 
fclose ($fp); 
die ("写入模板失败!"); 
} 
} 
?> 
简单的将模板写进一个文件中存为html.html

2,按时间生成html文件名
<? 
$content = "这是一个以日期时间为文件名的静态生成网页的测试文件,
文件名格式一般为<font color=#ff0000>年月日时分秒.html</font>"; 
$date = date('YmdHis'); 
$fp = fopen (date('YmdHis') . '.html',"w");
//本函数可用来打开本地或者远端的文件 'w' 开文件方式为写入,
文件指针指到开始处,并将原文件的长度设为 0。若文件不存在,
则建立新文件。 
if (fwrite ($fp,$content)){
//格式是.int fwrite(int fp(文件名), string string(内容),
 int [length](长度));本函数将字符串 string 写入文件资料流的指针 fp 上。
若有指定长度 length,则会写入指定长度字符串,或是写到字符串结束。 
fclose ($fp);//函数用来关闭已经打开的文件的指针 fp。
成功返回 true,失败则返回 false。 
die ("写入模板成功"); 
} else { 
fclose ($fp); 
die ("写入模板失败!"); 
} 
echo ($content); 
?>

3,下面为转换文件名的一个方法
<?php 
$s_fname = "93e.php"; 
$o_fname = "93e.htm"; 
ob_end_clean(); 
ob_start(); 
include($s_fname); 
$length = ob_get_length(); 
$buffer = ob_get_contents(); 
$buffer = eregi_replace("r","",$buffer); 
ob_end_clean(); 
$fp = fopen($o_fname,"w+"); 
fwrite($fp,$buffer); 
fclose($fp); 
?>

这样就可以把 93e.php转化为静态的HTML文件了 。要注意的是待转换的文件里不能有 ob_end_clean();和 ob_start();语句,且目录要有写权限。
PHP 相关文章推荐
PHP容易忘记的知识点分享
Apr 30 PHP
php简单浏览目录内容的实现代码
Jun 07 PHP
浅析php学习的路线图
Jul 10 PHP
19个Android常用工具类汇总
Dec 30 PHP
php中文繁体和简体相互转换的方法
Mar 21 PHP
PHP实现批量上传单个文件
Dec 29 PHP
php中分页及SqlHelper类用法实例
Jan 12 PHP
PHP中include()与require()的区别说明
Feb 14 PHP
PHP中时间加减函数strtotime用法分析
Apr 26 PHP
PHP多进程编程实例详解
Jul 19 PHP
php tpl模板引擎定义与使用示例
Aug 09 PHP
PHP For循环字母A-Z当超过26个字母时输出AA,AB,AC
Feb 16 PHP
解析PHP汉字转换拼音的类
Jun 18 #PHP
解析php中反射的应用
Jun 18 #PHP
使用Smarty 获取当前日期时间和格式化日期时间的方法详解
Jun 18 #PHP
解析smarty模板中类似for的功能实现
Jun 18 #PHP
smarty基础之拼接字符串的详解
Jun 18 #PHP
php class中public,private,protected的区别以及实例分析
Jun 18 #PHP
解析thinkphp基本配置 convention.php
Jun 18 #PHP
You might like
cache_lite试用
2007/02/14 PHP
php 计算两个时间戳相隔的时间的函数(小时)
2009/12/18 PHP
laravel-admin select框默认选中的方法
2019/10/03 PHP
tp5.1 框架join方法用法实例分析
2020/05/26 PHP
又一个图片自动缩小的JS代码
2007/03/10 Javascript
常用的javascript function代码
2008/05/23 Javascript
JSQL 基于客户端的成绩统计实现方法
2010/05/05 Javascript
JS中的构造函数详细解析
2014/03/10 Javascript
Javascript无参数和有参数类继承问题解决方法
2015/03/02 Javascript
JavaScript动态添加style节点的方法
2015/06/09 Javascript
程序员必知35个jQuery 代码片段
2015/11/05 Javascript
一不小心就做错的JS闭包面试题
2015/11/25 Javascript
AngularJS基础 ng-include 指令简单示例
2016/08/01 Javascript
Javascript中的prototype与继承
2017/02/06 Javascript
nodejs个人博客开发第六步 数据分页
2017/04/12 NodeJs
基于js粘贴事件paste简单解析以及遇到的坑
2017/09/07 Javascript
Three.js基础学习之场景对象
2017/09/27 Javascript
bootstrap Table实现合并相同行
2019/07/19 Javascript
在vue中实现禁止回退上一步,路由不存历史记录
2020/07/22 Javascript
JavaScript实现点击自制菜单效果
2021/02/02 Javascript
[03:17]2016完美“圣”典风云人物:冷冷专访
2016/12/08 DOTA
[45:10]NB vs Liquid Supermajor小组赛 A组胜者组决赛 BO3 第二场 6.2
2018/06/04 DOTA
[06:45]DOTA2-DPC中国联赛 正赛 Magma vs LBZS 选手采访
2021/03/11 DOTA
在java中如何定义一个抽象属性示例详解
2017/08/18 Python
python写入并获取剪切板内容的实例
2018/05/31 Python
关于django 1.10 CSRF验证失败的解决方法
2019/08/31 Python
python 画函数曲线示例
2019/12/04 Python
python3注册全局热键的实现
2020/03/22 Python
pandas数据处理之绘图的实现
2020/06/15 Python
CSS3新属性transition-property transform box-shadow实例学习
2013/06/06 HTML / CSS
ESDlife健康生活易:身体检查预订、搜寻及比较
2019/05/10 全球购物
路政管理专业推荐信
2013/11/11 职场文书
培训演讲稿范文
2014/01/12 职场文书
django注册用邮箱发送验证码的实现
2021/04/18 Python
python 中的@运算符使用
2021/05/26 Python
JavaScript展开运算符和剩余运算符的区别详解
2022/02/18 Javascript