第一種:利用模板。目前PHP的模板可以說(shuō)是很多了,有功能強(qiáng)大的smarty,還有簡(jiǎn)單易用 " /> 中文字幕日韩一区,日本动漫理论片在线观看网站,精品免费av

色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

PHP動(dòng)態(tài)變靜態(tài)原理

php輸出靜態(tài)頁(yè)面的方法,就我所知道的,有2種,一種是利用模板技術(shù),另一種是用ob系列函數(shù)。兩種方法,看起來(lái)都差不多,但是實(shí)際上,卻是不同的。

第一種:利用模板。目前php的模板可以說(shuō)是很多了,有功能強(qiáng)大的smarty,還有簡(jiǎn)單易用的smarttemplate等。它們每一種模板,都有一個(gè)獲取輸出內(nèi)容的函數(shù)。我們生成靜態(tài)頁(yè)面的方法,就是利用了這個(gè)函數(shù)。用這個(gè)方法的優(yōu)點(diǎn)是,代碼比較清晰,可讀性好。

這里我用smarty做例子,說(shuō)明如何生成靜態(tài)頁(yè)
復(fù)制代碼 代碼如下:<?php 
require('smarty/Smarty.class.php'); 
$t = new Smarty; 
$t->assign("title","Hello World!"); 
$content = $t->fetch("templates/index.htm"); 
//這里的 fetch() 就是獲取輸出內(nèi)容的函數(shù),現(xiàn)在$content變量里面,就是要顯示的內(nèi)容了 
$fp = fopen("archives/2005/05/19/0001.html", "w"); 
fwrite($fp, $content); 
fclose($fp); 
?>  
第二種方法:利用ob系列的函數(shù)。這里用到的函數(shù)主要是 ob_start(), ob_end_flush(), ob_get_content(),其中ob_start()是打開(kāi)瀏覽器緩沖區(qū)的意思,打開(kāi)緩沖后,所有來(lái)自php程序的非文件頭信息均不會(huì)發(fā)送,而是保存在內(nèi)部緩沖區(qū),直到你使用了ob_end_flush().而這里最重要的一個(gè)函數(shù),就是ob_get_contents(),這個(gè)函數(shù)的作用是獲取緩沖區(qū)的內(nèi)容,相當(dāng)于上面的那個(gè)fetch(),道理一樣的。代碼:
復(fù)制代碼 代碼如下:<?php 
ob_start(); 
echo "Hello World!"; 
$content = ob_get_contents();//取得php頁(yè)面輸出的全部?jī)?nèi)容 
$fp = fopen("archives/2005/05/19/0001.html", "w"); 
fwrite($fp, $content); 
fclose($fp); 
?>  

php技術(shù)PHP動(dòng)態(tài)變靜態(tài)原理,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 烟台市| 凉城县| 满洲里市| 宁远县| 温州市| 澳门| 香河县| 新蔡县| 呈贡县| 张北县| 荆门市| 柘荣县| 青浦区| 化德县| 临颍县| 澎湖县| 施秉县| 邹平县| 永昌县| 云林县| 根河市| 安宁市| 山阴县| 德化县| 原阳县| 孝感市| 颍上县| 西华县| 南涧| 玛曲县| 芦溪县| 永济市| 永顺县| 临朐县| 杭州市| 吴忠市| 松原市| 临洮县| 广德县| 三门峡市| 河东区|