程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> PHP批量生成靜態HTML的簡單原理和方法

PHP批量生成靜態HTML的簡單原理和方法

編輯:PHP綜合

現在的CMS基本上都支持文章生成HTML,生成HTML靜態網頁的好處就不用多說了吧,無論是頁面打開的浏覽速度,還是有利於搜索引擎優化SEO,都有明顯的提高,有時候網頁中有或多或少的漏洞,把PHP轉換成HTML格式也有力地保護了網站。

PHP生成HTML的技術要比ASP的技術相對來說要簡單一點,下面簡要說一下怎樣用PHP批量生成HTML技術吧,先看一下面源碼:

復制代碼 代碼如下:
<?php  
if($_POST[button]){  

$sql="select * from doorsjk_about where id<12";  
$rs=$db->query($sql);  
while($row=$db->fetch_array($rs)){  

$path='list12'.$row[id].'.html';  

$fp=fopen("../group/about.html","r");  
$str=fread($fp,filesize("../group/about.html"));  
$str=str_replace("{title}",$row[title],$str);  
$str=str_replace("{name}",$system['name'],$str);  
$str=str_replace("{content}",$row[content],$str);  
$str=str_replace("{copyright}",$system['copyright'],$str);  
fclose($fp);  

$handle=fopen("../group/".$path,"w");   
fwrite($handle,$str);  
echo "<font color='red'>正在生成</font>";  
echo "$path";  
fclose($handle);  
}  
echo "<script>alert('生成成功!');window.location.href='Onlyhtml.php';</script>";  
}  
?>  

<form id="form1" name="form1" method="post" action="">  
  <label><div style="margin:200px 200px;"><img src="../images/html.jpg" />  
  <input type="submit" name="button" id="button" value="單頁生成" />  
  </div>  
  </label>  
</form>

首先將連接數據庫的代碼包含進來,下面是一個點擊的表單,當接受到按鈕 button 後,就直接循環生成HTML,這裡的$path='list12′.$row[id].'.html';是生成的文件名稱,而$fp=fopen(“../group/about.html”,”r”);是打開的模板文件,只要做成自己想要的HTML文件就可以了,這裡用str_replace函數來做替換的標簽,這樣就可以在HTML裡面調用類似於{title}這樣的標簽生成HTML文件了,舉一反三,簡單的HTML批量生成就做成了。

在HTML文件裡調用標簽是:{title} ,這樣就直接調到讀取的數據庫裡文件:$row[title],如果數據量很大,可以分段批量生成,就是生成ID:從()到()之間。用limit來接受調用。至於HTML裡面要用到的動態文件,比如生成靜態後還要統計文章的讀取次數,這個動態的調用可以封裝成JS文件,嵌入進來就行了。



這裡介紹的是批量重新生成,其實還有在填加新聞時就生成HTML文件,編輯文章內容時生成HTML文件,其實原理上都差不多,我會寫下來,可以做個參考。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved