All articles| All Pictures| All Softwares| All Video| Go home page| Write articles| Upload pictures

Reading number is top 10 articles
asp.net2.0网站基础之程序运行
对比两个DataTable是否相同的正确方法_[Asp.Net教程]
用javascript操纵GridView中CheckBox的两个常用技巧_[Asp.Net教程]
Asp.Net,加密示例_[Asp.Net教程]
ASP.NET实例:手把手教你如何扩展GridView之个性分页_[Asp.Net教程]
SQL循序渐进(1)介绍SQL_[SQL,Server教程]
ASP.NET,2.0
优秀ASP.NET程序员修炼之路_[Asp.Net教程]
实例了解Asp.Net的继承和多态性_[Asp.Net教程]
脚本代码:实例解析Js+XML的操作方法_JavaScript技术_编程技术
Reading number is top 10 pictures
中国的十元人民币的秘密
Sell the barbecue as says father du breul2
两张抽象画
人造器官和铁肺人
[猫扑大杂烩]华东师范墙上看到的捐精告示 15毫升3600元
中国处女图鉴2
大人物的礼物
有种屌丝级别的好妹子
接财神,大吉大利,财源滚滚来
The money of more than 100 countries and regions12
Download software ranking
asp.net技术内幕
matrix2
Sora aoi‘s film--Lust fan wall
Unix video tutorial4
jBuilder2006
Unix video tutorial2
Call Of Duty2
C#与.NET技术平台实战演练
小黑猫大战两米大花蛇
豪门浪荡史
aaa published in(发表于) 2013/12/21 22:41:03 Edit(编辑)
用PHP将整个网站生成HTML_php资料_编程技术

用PHP将整个网站生成HTML_php资料_编程技术

用PHP将整个网站生成HTML_php资料_编程技术-你的首页-uuhomepage.com

php
//在你的开始处加入 ob_start();
ob_start();


//以下是你的代码
.


//在结尾加入 ob_end_clean(),并把本页输出到一个变量中
$temp = ob_get_contents();
ob_end_clean();


//写入文件
$fp = fopen(’文件名’,'w’);
fwrite($fp,$temp) or die(’写文件错误’);
?>


这只是最基本的方法,还不是很实用,因为网站是要更新的,要定期重新生成HTML


下面是我用的方法:


if(file_exists(“xxx.html“))
{
$time = time();


//文件修改时间和现在时间相差半小时一下的话,直接导向html文件,否则重新生成html
if($time - filemtime(“xxx.html“) < 30*60)
{
header(“Location:xxx.html“);
}
}
//在你的开始处加入 ob_start();
ob_start();


//页面的详细内容



//在结尾加入 ob_end_clean(),并把本页输出到一个变量中
$temp = ob_get_contents();
ob_end_clean();


//写入文件
$fp = fopen(’xxx.html’,'w’);
fwrite($fp,$temp) or die(’写文件错误’);


//重新导向
header(“Location:xxx.html“);
下面是一些用到的函数的介绍:
1、Flush:刷新缓冲区的内容,输出。
函数格式:flush()
说明:这个函数经常使用,效率很高。
2、ob_start :打开输出缓冲区
函数格式:void ob_start(void)
说明:当缓冲区激活时,所有来自PHP程序的非文件头信息均不会发送,而是保存在内部缓冲区。为了输出缓冲区的内容,可以使用ob_end_flush()或flush()输出缓冲区的内容。
3 、ob_get_contents :返回内部缓冲区的内容。
使用方法:string ob_get_contents(void)
说明:这个函数会返回当前缓冲区中的内容,如果输出缓冲区没有激活,则返回 FALSE 。
4、ob_get_length:返回内部缓冲区的长度。
使用方法:int ob_get_length(void)
说明:这个函数会返回当前缓冲区中的长度;和ob_get_contents一样,如果输出缓冲区没有激活。则返回 FALSE。
5、ob_end_flush :发送内部缓冲区的内容到浏览器,并且关闭输出缓冲区。
使用方法:void ob_end_flush(void)
说明:这个函数发送输出缓冲区的内容(如果有的话)。
6、ob_end_clean:删除内部缓冲区的内容,并且关闭内部缓冲区
使用方法:void ob_end_clean(void)
说明:这个函数不会输出内部缓冲区的内容而是把它删除!
7、ob_implicit_flush:打开或关闭绝对刷新
使用方法:void ob_implicit_flush ([int flag])
说明:使用过Perl的人都知道$|=x的意义,这个字符串可以打开/关闭缓冲区,而ob_implicit_flush函数也和那个一样,默认为关闭缓冲区,打开绝对输出后,每个脚本输出都直接发送到浏览器,不再需要调用 flush()





添加到del.icio.us 添加到新浪ViVi 添加到百度搜藏 添加到POCO网摘 添加到天天网摘365Key 添加到和讯网摘 添加到天极网摘 添加到黑米书签 添加到QQ书签 添加到雅虎收藏 添加到奇客发现 diigo it 添加到饭否 添加到飞豆订阅 添加到抓虾收藏 添加到鲜果订阅 digg it 貼到funP 添加到有道阅读 Live Favorites 添加到Newsvine 打印本页 用Email发送本页 在Facebook上分享


Disclaimer Privacy Policy About us Site Map

If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)
Copyright ©2011-
uuhomepage.com, Inc. All rights reserved.