php生成html文件原理,PHP生成静态HTML文件

简明现代魔法 -> PHP服务器脚本 -> PHP生成静态HTML文件

PHP生成静态HTML文件

2009-10-21

生成HTML文件有很多好处,比如减轻服务器和数据库的压力,以及搜索引擎对单个文件的收录等。

生成HTML文件的原理也很简单,就是通过fwrite()函数将写好的文件写成HTML形式的文件即可,只是过程中的细节需要准确把握。PHP中有一个文件操作函数fopen,即打开文件。若文件不存在,则尝试创建。这即是PHP可以用来创建HTML文件的理论基础。只要用来存放HTML文件的文件夹有写权限(即权限定义0777),即可创建文件。

PHP的部分操作函数:(这些函数主要是对文件的操作)

Fopen(路径和文件名,打开方式):该函数的作用是打开指定路径下的文件,常用的打开方式有三种,R为只读,W为写入,A为读写。

Fread(打开的文件,结束位置):该函数的作用是读取文件中指定的一段内容,从文件开始到结束位置的内容。

Filesize(路径和文件名):作用是读取文件大小,得到的文件大小的单位是以字节为单位的。

Fwrite(路径和文件名,写入的内容):写入文件内容,函数中第二个参数可以是直接的内容,如“这里是PHP”,也可以是变量。

程序代码

$date = date("Ymd");

?>

" target="_blank">察看生成的文件

$content = ''.

"\n"."这是一个静态生成网页的测试文件,文件名为$date.html";

$fp = fopen ("htmlgenerator/$date.html","w");

if (fwrite ($fp, $content)){

fclose ($fp);

die ("创建HTML文件成功");

} else {

fclose ($fp);

die ("创建HTML文件失败!");

}

?>

此处用date()函数获取当前日期作为生成的HTML文件名。然后生成的文件在htmlgenerator/目录下。

调用fopen()函数,赋给变量$fp,之后调用fwrite()函数对文件写入信息。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
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. 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();语句。 且目录要有写权限。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值