现在的动态网站存在很多性能上的弊端,seo优化会存在一定的瓶颈,现在将动态的网站代码转换为html静态文件,是浏览器通过html间接的读取动态网站源文件,这对其网站加载速度还是seo优化有着举足轻重的作用。
本文将介绍Php 生成静态html文件的三种方法 。
1,下面使用模版的一个方法!
1 <?php 2 $fp = fopen ("templets.html","a"); 3 if ($fp){ 4 $fup = fread ($fp,filesize("templets.html")); 5 $fp2 = fopen ("html.shtml","w"); 6 if ($fwrite ($fp2,$fup)){ 7 $fclose ($fp); 8 $fcolse ($fp2); 9 die ("写入模板成功"); 10 } else { 11 fclose ($fp); 12 die ("写入模板失败!"); 13 } 14 } 15 ?>
简单的将模板写进一个文件中存为html.html
2,按时间生成html文件名
1 <? 2 $content = "这是一个以日期时间为文件名的静态生成网页的测试文件, 3 文件名格式一般为<font color=#ff0000>年月日时分秒.html</font>"; 4 $date = date('YmdHis'); 5 $fp = fopen (date('YmdHis') . '.html',"w"); 6 //本函数可用来打开本地或者远端的文件 'w' 开文件方式为写入, 7 文件指针指到开始处,并将原文件的长度设为 0。若文件不存在, 8 则建立新文件。 9 if (fwrite ($fp,$content)){ 10 //格式是.int fwrite(int fp(文件名), string string(内容), 11 int [length](长度));本函数将字符串 string 写入文件资料流的指针 fp 上。 12 若有指定长度 length,则会写入指定长度字符串,或是写到字符串结束。 13 fclose ($fp);//函数用来关闭已经打开的文件的指针 fp。 14 成功返回 true,失败则返回 false。 15 die ("写入模板成功"); 16 } else { 17 fclose ($fp); 18 die ("写入模板失败!"); 19 } 20 echo ($content); 21 ?>
3,下面为转换文件名的一个方法
1 <?php 2 $s_fname = "93e.php"; 3 $o_fname = "93e.htm"; 4 ob_end_clean(); 5 ob_start(); 6 include($s_fname); 7 $length = ob_get_length(); 8 $buffer = ob_get_contents(); 9 $buffer = eregi_replace("r","",$buffer); 10 ob_end_clean(); 11 12 $fp = fopen($o_fname,"w+"); 13 fwrite($fp,$buffer); 14 fclose($fp); 15 ?>
这样就可以把 93e.php转化为静态的HTML文件了 。要注意的是待转换的文件里不能有 ob_end_clean();和 ob_start();语句,且目录要有写权限。