- 相關(guān)推薦
php入門教程:生成靜態(tài)html頁面原理
經(jīng)常操作網(wǎng)站后臺的人都知道,現(xiàn)在大多數(shù)的網(wǎng)站系統(tǒng),如dedecms、phpcms、帝國等知名內(nèi)容管理系統(tǒng)都提供生成靜態(tài)頁面的功能,這不光有利于搜索引擎的抓取,而且還能有效降低服務(wù)器壓力,所以說這是一個(gè)很流行、實(shí)用的功能。
對于學(xué)習(xí)PHP,將要從事WEB網(wǎng)站開發(fā)的朋友們來說,了解這個(gè)功能是必不可少的,由此,下面來分享一下PHP生成靜態(tài)頁面的原理。
一、思路分析
其實(shí),實(shí)現(xiàn)靜態(tài)頁面生成功能的原理很簡單,主要利用幾個(gè)常見的PHP文件操作函數(shù)對文件進(jìn)行操作,其思路流程如下:
生成靜態(tài)頁面流程圖
二、功能實(shí)現(xiàn)
設(shè)置example.html為模板文件,然后按照此模板文件生成article-1.html~article-5.html,以此來做簡單的演示,代碼如下:
<?php
//將數(shù)據(jù)存入二維數(shù)組
$con=array(array('文章標(biāo)題1','文章內(nèi)容1'),
array('文章標(biāo)題2','文章內(nèi)容2'),
array('文章標(biāo)題3','文章內(nèi)容3'),
array('文章標(biāo)題4','文章內(nèi)容4'),
array('文章標(biāo)題5','文章內(nèi)容5'));
foreach($con as $id=>$val){
//循環(huán)生成
$title=$val[0];
$content=$val[1];
$path="article-".($id+1).".html";
//替換example內(nèi)容,并獲取內(nèi)容賦值給$str
$fp=fopen("example.html","r");
$str=fread($fp,filesize("example.html"));
$str=str_replace("{title}",$title,$str);
$str=str_replace("{content}",$content,$str);
fclose($fp);
//新建空白文件,將$str寫入
$handle=fopen($path,"w");
fwrite($handle,$str);
fclose($handle);
echo "生成".$path."<br/>";
}
?>
注解:
fopen(文件名,打開方式),打開文件函數(shù),若無文件,則創(chuàng)建。其返回值為資源型;
fread(文件名,讀取字節(jié)數(shù)),讀取文件內(nèi)容及對應(yīng)的字節(jié)數(shù);
str_replace(規(guī)定要查找的值,替換被查找值的值,被搜索的字符串),替換函數(shù);
fclose(文件名),關(guān)閉文件;
fwrite(要寫入的打開文件,要寫入打開文件的字符串,要寫入的最大字節(jié)數(shù))。
三、最后
原理比較簡單,作為php初學(xué)者,要把每個(gè)基礎(chǔ)知識扎實(shí)學(xué)好,堅(jiān)持每天擼碼,形成條件反射,其次以工作需求為導(dǎo)向,設(shè)定好階段性目標(biāo),相信,你的PHP之路定會風(fēng)光無限,共勉!
【php入門教程:生成靜態(tài)html頁面原理】相關(guān)文章:
php靜態(tài)成員變量分享05-05
如何在HTML頁面插入flash代碼01-21
RTK靜態(tài)控制測量原理方法03-12
探討PHP函數(shù)的實(shí)現(xiàn)原理及性能07-07
為什么SEO過程要進(jìn)行偽靜態(tài)頁面設(shè)置?09-11
關(guān)于php堆排序?qū)崿F(xiàn)原理與應(yīng)用方法10-09
php生成帶logo二維碼方法08-20