實現PHP頁面靜態化_PHP教程
教程Tag:暫無Tag,歡迎添加,賺取U幣!
推薦:怎樣給PHP源代碼加密?PHP二進制加密與解密的解決辦法本篇文章小編為大家介紹,怎樣給PHP源代碼加密?PHP二進制加密與解密的解決辦法。需要的朋友參考下
<?php
//首先查看緩存文件
if(file_exists("static.html")){
//緩存時間為3分鐘
if(time()-filemtime("static.html")<60*3){
//將靜態文件內容返回給客戶端
$start_time = microtime();
echo "我是從靜態文件中讀取的數據:"."<br/>";
echo file_get_contents("static.html");
$end_time = microtime();
echo "靜態文件使用時間:".($end_time-$start_time);
exit;
}
}
//如果是首次訪問,或者是上次緩存的時間超過3分鐘,則從數據庫中讀取數據
$host = "127.0.0.1";
$user = "root";
$password = "123456";
//記錄開始時間
$start_time = microtime();
mysql_connect($host,$user,$password);
mysql_select_db("mydb");
mysql_query("set names utf8");
$sql = "SELECT name,address,email FROM users";
$resource = mysql_query($sql);
echo "我是從數據庫中讀取的數據:<br/>";
ob_start();//打開輸出緩沖
echo "<table border='1'><tr><th>姓名</th><th>地址</th><th>Email</th></tr>";
//輸出取得的信息
while($userInfo = mysql_fetch_assoc($resource)){
echo "<tr>";
echo "<td>".$userInfo['name']."</td>";
echo "<td>".$userInfo['address']."</td>";
echo "<td>".$userInfo['email']."</td>";
echo "</tr>";
}
$end_time=microtime();
$str=ob_get_contents();//獲取緩沖區的內容
ob_end_flush();
echo "從數據庫讀數據的時間:".($end_time-$start_time);
file_put_contents("static.html",$str);
?>
users表中有三條記錄,使用的是apache服務。測試結果如下:
從數據庫中讀數據其平均執行時間為:0.0008041s左右
直接讀緩存文件期平均執行時間為:0.0000475
數據庫中的記錄只有三條,SQL也是簡單的單表查詢,當表的中記錄很多時,或者是多表查詢其執行的時間將會更長。緩存雖然能夠減少訪問數據庫的次數,加速響應時間,但緩存并不適合所有的頁面。有些頁面可能每次訪問時其頁面的顯示的內容就會發生變化,這樣的頁面顯然不能使用緩存。對于那些變化很少的頁面才比較適合使用緩存。
分享:基于magic_quotes_gpc與magic_quotes_runtime的區別與使用介紹本篇文章小編為大家介紹,基于magic_quotes_gpc與magic_quotes_runtime的區別與使用介紹。需要的朋友參考下
相關PHP教程:
- 相關鏈接:
- 教程說明:
PHP教程-實現PHP頁面靜態化。