电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

PHP文件緩存類

瀏覽:130日期:2022-09-13 11:21:24
cache.inc.php類

<?php class Cache { /** * $dir : 緩存文件存放目錄 * $lifetime : 緩存文件有效期,單位為秒 * $cacheid : 緩存文件路徑,包含文件名 * $ext : 緩存文件擴展名(可以不用),這里使用是為了查看文件方便 */ private $dir; private $lifetime; private $cacheid; private $ext; /** * 析構函數,檢查緩存目錄是否有效,默認賦值 */ function __construct($dir=’’,$lifetime=1800) { if ($this--->dir_isvalid($dir)) { $this->dir = $dir; $this->lifetime = $lifetime; $this->ext = ’.Php’; $this->cacheid = $this->getcacheid(); } } /** * 檢查緩存是否有效 */ private function isvalid() { if (!file_exists($this->cacheid)) return false; if (!(@$mtime = filemtime($this->cacheid))) return false; if (mktime() - $mtime > $this->lifetime) return false; return true; } /** * 寫入緩存 * $mode == 0 , 以瀏覽器緩存的方式取得頁面內容 * $mode == 1 , 以直接賦值(通過$content參數接收)的方式取得頁面內容 * $mode == 2 , 以本地讀取(fopen ile_get_contents)的方式取得頁面內容(似乎這種方式沒什么必要) */ public function write($mode=0,$content=’’) { switch ($mode) { case 0: $content = ob_get_contents(); break; default: break; } ob_end_flush(); try { file_put_contents($this->cacheid,$content); } catch (Exception $e) { $this->error(’寫入緩存失敗!請檢查目錄權限!’); } } /** * 加載緩存 * exit() 載入緩存后終止原頁面程序的執行,緩存無效則運行原頁面程序生成緩存 * ob_start() 開啟瀏覽器緩存用于在頁面結尾處取得頁面內容 */ public function load() { if ($this->isvalid()) { echo ' '; //以下兩種方式,哪種方式好????? require_once($this->cacheid); //echo file_get_contents($this->cacheid); exit(); } else { ob_start(); } } /** * 清除緩存 */ public function clean() { try { unlink($this->cacheid); } catch (Exception $e) { $this->error(’清除緩存文件失敗!請檢查目錄權限!’); } } /** * 取得緩存文件路徑 */ private function getcacheid() { return $this->dir.md5($this->geturl()).$this->ext; } /** * 檢查目錄是否存在或是否可創建 */ private function dir_isvalid($dir) { if (is_dir($dir)) return true; try { mkdir($dir,0777); } catch (Exception $e) { $this->error(’所設定緩存目錄不存在并且創建失敗!請檢查目錄權限!’); return false; } return true; } /** * 取得當前頁面完整url */ private function geturl() { $url = ’’; if (isset($_SERVER[’REQUEST_URI’])) { $url = $_SERVER[’REQUEST_URI’]; } else { $url = $_SERVER[’Php_SELF’]; $url .= empty($_SERVER[’QUERY_STRING’])?’’:’?’.$_SERVER[’QUERY_STRING’]; } return $url; } /** * 輸出錯誤信息 */ private function error($str) { echo $str; }}?> demo.php

<php/* * 使用方法舉例 ------------------------------------Demo------------------------------------------- require_once(’cache.inc.php’); $cachedir = ’./Cache/’; //設定緩存目錄 $cache = new Cache($cachedir,10); //省略參數即采用缺省設置, $cache = new Cache($cachedir); if ($_GET[’cacheact’] != ’rewrite’) //此處為一技巧,通過xx.Php?cacheact=rewrite更新緩存,以此類推,還可以設定一些其它操作 $cache->load(); //裝載緩存,緩存有效則不執行以下頁面代碼 //頁面代碼開始 echo date(’H:i:s jS F’); //頁面代碼結束 $cache->write(); //首次運行或緩存過期,生成緩存 ------------------------------------Demo2------------------------------------------- require_once(’cache.inc.php’); $cachedir = ’./Cache/’; //設定緩存目錄 $cache = new Cache($cachedir,10); //省略參數即采用缺省設置, $cache = new Cache($cachedir); if ($_GET[’cacheact’] != ’rewrite’) //此處為一技巧,通過xx.Php?cacheact=rewrite更新緩存,以此類推,還可以設定一些其它操作 $cache->load(); //裝載緩存,緩存有效則不執行以下頁面代碼 //頁面代碼開始 $content = date(’H:i:s jS F’); echo $content; //頁面代碼結束 $cache->write(1,$content); //首次運行或緩存過期,生成緩存 ------------------------------------Demo3------------------------------------------- require_once(’cache.inc.php’); define(’CACHEENABLE’,true); if (CACHEENABLE) { $cachedir = ’./Cache/’; //設定緩存目錄 $cache = new Cache($cachedir,10); //省略參數即采用缺省設置, $cache = new Cache($cachedir); if ($_GET[’cacheact’] != ’rewrite’) //此處為一技巧,通過xx.Php?cacheact=rewrite更新緩存,以此類推,還可以設定一些其它操作 $cache->load(); //裝載緩存,緩存有效則不執行以下頁面代碼 } //頁面代碼開始 $content = date(’H:i:s jS F’); echo $content; //頁面代碼結束 if (CACHEENABLE) $cache->write(1,$content); //首次運行或緩存過期,生成緩存*/?>

標簽: PHP
相關文章:
主站蜘蛛池模板: 压力控制器,差压控制器,温度控制器,防爆压力控制器,防爆温度控制器,防爆差压控制器-常州天利智能控制股份有限公司 | 代写标书-专业代做标书-商业计划书代写「深圳卓越创兴公司」 | 塑胶地板-商用PVC地板-pvc地板革-安耐宝pvc塑胶地板厂家 | 贝壳粉涂料-内墙腻子-外墙腻子-山东巨野七彩贝壳漆业中心 | 抖音短视频运营_企业网站建设_网络推广_全网自媒体营销-东莞市凌天信息科技有限公司 | 东亚液氮罐-液氮生物容器-乐山市东亚机电工贸有限公司 | 氧化锆纤维_1800度高温退火炉_1800度高温烧结炉-南京理工宇龙新材料股份有限公司 | 对照品_中药对照品_标准品_对照药材_「格利普」高纯中药标准品厂家-成都格利普生物科技有限公司 澳门精准正版免费大全,2025新澳门全年免费,新澳天天开奖免费资料大全最新,新澳2025今晚开奖资料,新澳马今天最快最新图库 | 宁波普瑞思邻苯二甲酸盐检测仪,ROHS2.0检测设备,ROHS2.0测试仪厂家 | 原子吸收设备-国产分光光度计-光谱分光光度计-上海光谱仪器有限公司 | 杰恒蠕动泵-蠕动泵专业厂家-19年专注蠕动泵 | 高压无油空压机_无油水润滑空压机_水润滑无油螺杆空压机_无油空压机厂家-科普柯超滤(广东)节能科技有限公司 | 阜阳成人高考_阜阳成考报名时间_安徽省成人高考网 | 河北凯普威医疗器材有限公司,高档轮椅系列,推车系列,座厕椅系列,协步椅系列,拐扙系列,卫浴系列 | 视觉检测设备_自动化检测设备_CCD视觉检测机_外观缺陷检测-瑞智光电 | 武汉不干胶印刷_标签设计印刷_不干胶标签印刷厂 - 武汉不干胶标签印刷厂家 | 撕碎机_轮胎破碎机_粉碎机_回收生产线厂家_东莞华达机械有限公司 | 武汉高温老化房,恒温恒湿试验箱,冷热冲击试验箱-武汉安德信检测设备有限公司 | 广州昊至泉水上乐园设备有限公司 | ISO9001认证咨询_iso9001企业认证代理机构_14001|18001|16949|50430认证-艾世欧认证网 | 砂磨机_立式纳米砂磨机_实验室砂磨机-广州儒佳化工设备厂家 | 渣油泵,KCB齿轮泵,不锈钢齿轮泵,重油泵,煤焦油泵,泊头市泰邦泵阀制造有限公司 | 绿叶|绿叶投资|健康产业_绿叶投资集团有限公司 | 无锡网站建设_小程序制作_网站设计公司_无锡网络公司_网站制作 | MVE振动电机_MVE震动电机_MVE卧式振打电机-河南新乡德诚生产厂家 | 智能电表|预付费ic卡水电表|nb智能无线远传载波电表-福建百悦信息科技有限公司 | 快干水泥|桥梁伸缩缝止水胶|伸缩缝装置生产厂家-广东广航交通科技有限公司 | 爱德华真空泵油/罗茨泵维修,爱发科-比其尔产品供应东莞/杭州/上海等全国各地 | 储气罐,真空罐,缓冲罐,隔膜气压罐厂家批发价格,空压机储气罐规格型号-上海申容压力容器集团有限公司 | 电磁流量计厂家_涡街流量计厂家_热式气体流量计-青天伟业仪器仪表有限公司 | 钛合金标准件-钛合金螺丝-钛管件-钛合金棒-钛合金板-钛合金锻件-宝鸡远航钛业有限公司 | 吸污车_吸粪车_抽粪车_电动三轮吸粪车_真空吸污车_高压清洗吸污车-远大汽车制造有限公司 | 航空障碍灯_高中低光强航空障碍灯_民航许可认证航空警示灯厂家-东莞市天翔航天科技有限公司 | 回转炉,外热式回转窑,回转窑炉-淄博圣元窑炉工程有限公司 | 污水提升器,污水提升泵,地下室排水,增压泵,雨水泵,智能供排水控制器-上海智流泵业有限公司 | 美国PARKER齿轮泵,美国PARKER柱塞泵,美国PARKER叶片泵,美国PARKER电磁阀,美国PARKER比例阀-上海维特锐实业发展有限公司二部 | 苏州工作服定做-工作服定制-工作服厂家网站-尺品服饰科技(苏州)有限公司 | Akribis直线电机_直线模组_力矩电机_直线电机平台|雅科贝思Akribis-杭州摩森机电科技有限公司 | 小型玉石雕刻机_家用玉雕机_小型万能雕刻机_凡刻雕刻机官网 | 北京征地律师,征地拆迁律师,专业拆迁律师,北京拆迁律师,征地纠纷律师,征地诉讼律师,征地拆迁补偿,拆迁律师 - 北京凯诺律师事务所 | 伺服电机_直流伺服_交流伺服_DD马达_拓达官方网站|