本文實(shí)例講述了PHP使用OB緩存實(shí)現(xiàn)靜態(tài)化功能。分享給大家供大家參考,具體如下:
實(shí)現(xiàn)步驟
1、創(chuàng)建測(cè)試數(shù)據(jù)表并且寫(xiě)入數(shù)據(jù)
2、實(shí)現(xiàn)后臺(tái)的更新操作。使用OB緩存針對(duì)每一個(gè)內(nèi)容生成對(duì)應(yīng)的HTML文件
3、顯示前臺(tái)的數(shù)據(jù)信息
具體實(shí)現(xiàn)
①創(chuàng)建測(cè)試數(shù)據(jù)表并且寫(xiě)入數(shù)據(jù)(test.sql文件):
#創(chuàng)建數(shù)據(jù)表
create table news(
id int auto_increment,
title varchar(100) not null default '',
body text,
primary key(id)
)engine =myisam default charset=utf8;
#數(shù)據(jù)寫(xiě)入
insert into news values(null,'靜態(tài)化','靜態(tài)化可以減少服務(wù)器壓力'),(null,'偽靜態(tài)','偽靜態(tài)能夠滿足SEO優(yōu)化');
②實(shí)現(xiàn)后臺(tái)的更新操作(admin.php文件)
?php
//具體的后臺(tái)更新
//獲取所有的數(shù)據(jù)信息
mysql_connect('127.0.0.1','root','123456');
mysql_select_db('test');
$sql='select * from news';
$res = mysql_query($sql);
while ($row=mysql_fetch_assoc($res)) {
//針對(duì)每一條數(shù)據(jù)生成html文件
ob_start();//開(kāi)啟OB緩存
?>
!DOCTYPE html>
html lang="en">
head>
meta charset="utf-8">
title>靜態(tài)化介紹/title>
/head>
body>
h1>?php echo $row['title']; ?>/h1>
div>?php echo $row['body']; ?>/div>
/body>
/html>
?php
//獲取OB緩存中的內(nèi)容
$str = ob_get_contents();
//關(guān)閉OB緩存并且清空內(nèi)容。因?yàn)槿绻磺蹇諡g覽器上會(huì)看到所有的數(shù)據(jù)結(jié)果
ob_end_clean();
//將信息寫(xiě)入到文件中 關(guān)于具體的文件目錄及文件名稱需要自定義
//對(duì)于在實(shí)際項(xiàng)目中關(guān)于html文件的存儲(chǔ) 一般都會(huì)使用年月日的格式存在
file_put_contents($row['id'].'.html',$str);
}
?>
③實(shí)現(xiàn)前臺(tái)數(shù)據(jù)顯示(list.php文件):
?php
//顯示列表
//獲取所有的數(shù)據(jù)信息
mysql_connect('127.0.0.1','root','123456');
mysql_select_db('test');
$sql='select * from news';
$res = mysql_query($sql);
?>
!DOCTYPE html>
html lang="en">
head>
meta charset="utf-8">
title>靜態(tài)化介紹/title>
/head>
body>
h1>顯示列表/h1>
table>
tr>
td>序號(hào)/td>
td>標(biāo)題/td>
td>查看/td>
/tr>
?php while ($row =mysql_fetch_assoc($res)) {?>
tr>
td>?php echo $row['id']; ?>/td>
td>?php echo $row['title']; ?>/td>
td>a href="?php echo $row['id'];?>.html" rel="external nofollow" > 查看/a>/td>
/tr>
?php } ?>
/table>
/body>
/html>
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php緩存技術(shù)總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門(mén)教程》、《PHP基本語(yǔ)法入門(mén)教程》、《PHP數(shù)組(Array)操作技巧大全》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫(kù)操作入門(mén)教程》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
您可能感興趣的文章:- thinkphp5redis緩存新增方法實(shí)例講解
- PHP ob緩存以及ob函數(shù)原理實(shí)例解析
- 解決PHP Opcache 緩存刷新、代碼重載出現(xiàn)無(wú)法更新代碼的問(wèn)題
- PHP網(wǎng)頁(yè)緩存技術(shù)優(yōu)點(diǎn)及代碼實(shí)例
- php加速緩存器opcache,apc,xcache,eAccelerator原理與配置方法實(shí)例分析
- PHP利用緩存處理用戶注冊(cè)時(shí)的郵箱驗(yàn)證,成功后用戶數(shù)據(jù)存入數(shù)據(jù)庫(kù)操作示例
- TP5(thinkPHP框架)實(shí)現(xiàn)后臺(tái)清除緩存功能示例
- ThinkPHP3.2.3框架Memcache緩存使用方法實(shí)例總結(jié)
- 簡(jiǎn)單實(shí)用的PHP文本緩存類實(shí)例
- PHP緩存系統(tǒng)APCu擴(kuò)展的使用