国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

PHP基于文件存儲實現緩存的方法

2024-05-04 23:37:57
字體:
來源:轉載
供稿:網友

這篇文章主要介紹了PHP基于文件存儲實現緩存的方法,實例分析了smarty模板中php通過文件存儲來實現緩存的技巧,具有一定參考借鑒價值,需要的朋友可以參考下

本文實例講述了PHP基于文件存儲實現緩存的方法。分享給大家供大家參考。具體如下:

在一些數據庫數據記錄較大,但是服務器有限的時候,可能一條MySQL查詢就會好幾百毫秒,一個簡單的頁面一般也有十幾條查詢,這個時候也個頁面加載下來基本要好幾秒了,如果并發量高的話服務器基本就癱瘓了,造成一個頁面很久也加載不下來,這個時候我們可以使用文件緩存來緩解下MySQL的壓力,下面給個使用例子。

 

 
  1. <?php 
  2. //頁面業務邏輯處理,獲得結果 
  3. $objPage = new Page_IndexModel($arrParams); 
  4. //一系列的業務邏輯放在了objPage中,調用process方法獲得結果集 
  5. $arrResult = $objPage->process(); 
  6. //獲得結果后smarty賦值 
  7. $smarty->assign($arrResult); 
  8. //輸出模板 
  9. $smarty->display(); 
  10. ?> 

現在我們用文件緩存來略過Page業務處理這一步

 

 
  1. <?php 
  2. $cachFile = './index.php'
  3. //緩存文件存在且時間不超過一小時,則直接使用緩存的結果集,不在進行任何的MySQL查詢了 
  4. if(file_exists($cacheFile) && time()-filemtime($cachFile) < 3600) { 
  5. //使用緩存中的結果 
  6. $arrResult = include($cachFile); 
  7. else { 
  8. $objPage = new Page_IndexModel($arrParams); 
  9. $arrResult = $objPage->process(); 
  10. $strContent = "<?php /n return ".var_export($arrResult, true)."/n;"
  11. //將結果集緩存 
  12. file_put_contents($cachFile, $strContent); 
  13. //獲得結果后smarty賦值 
  14. $smarty->assign($arrResult); 
  15. //輸出模板 
  16. $smarty->display(); 

希望本文所述對大家的php程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 澄迈县| 沿河| 洪雅县| 长沙市| 集贤县| 越西县| 陆河县| 和平县| 天峨县| 宁蒗| 中西区| 博客| 沽源县| 改则县| 渝中区| 广安市| 福泉市| 芮城县| 渭南市| 肥东县| 洛扎县| 绵竹市| 景泰县| 邹城市| 兴城市| 南丰县| 都江堰市| 华亭县| 芮城县| 吉木萨尔县| 泸溪县| 福泉市| 遵义市| 永川市| 峡江县| 松江区| 龙山县| 宝兴县| 景东| 浙江省| 龙口市|