PHP通用缓存方法
/** 通用缓存 说明: 根据传递参数的个数用来确认需要进行的操作 若传递2个参数,作用是判断缓存档是否已经过期 若传递3个参数,作用是对内容进行缓存 返回: 若传递2个参数: 若未超出缓存期,则返回缓存的内容(该内容已解密) 若超出了缓存期,则返回bool值的FALSE 若传递3个参数: 对内容进行缓存(传递进来的内容未被加密,存储前要先加密),无返回值 参数: 第1个参数:string型,缓存档 第2个参数:int型,缓存多少秒 第3个参数:string型,缓存什么[可选] 用法: $che[0]=Run.'_cache/_qian_main_0.che'; //缓存档 $che[1]=600; //缓存多少秒 $che[2]=Fun::Cache($che[0],$che[1]); if(!is_bool($che[2])){ //未超出缓存期 echo '<pre class="brush:php;toolbar:false">',var_dump('读'),''; echo $che[2]; unset($che); }else{ //已超出缓存期 echo '
',var_dump('写'),''; $che[2]='???'; Fun::Cache($che[0],$che[1],$che[2]); echo $che[2]; unset($che); } //删除缓存档 Fun::Cache(Run.'_super_main_0.che',0,''); /**/ public static function Cache(){ $o=func_get_args(); if(!is_array($o)){ throw new exception('Error:'.__LINE__.',必须传递参数!');die(); } $count=count($o); switch($count){ case 2://判断缓存是否已经过期(未过期则返回缓存的内容,已过期则返回FALSE) //缓存档是否存在 if(!file_exists($o[0])){unset($o,$count);return FALSE;} //取得上次的修改时间 $o[3]=filemtime($o[0]); $o[3]=(!is_numeric($o[3]) or $o[3]=$o[1]){unset($o,$count);return FALSE;} //返回解密之后的内容 unset($count); return base64_decode(file_get_contents($o[0])); case 3://对内容进行缓存 //如果缓存时间小于1,则删除缓存档 if($o[1]<1){ if(file_exists($o[0])){@unlink($o[0]);} unset($o,$count); return ; } //更新缓存 file_put_contents($o[0],base64_encode(''.$o[2].''),LOCK_EX); if(file_exists($o[0])){ chmod($o[0],0777); } unset($o,$count); return ; default: unset($o,$count); throw new exception('Error:'.__LINE__.',参数个数不对!');die(); } }
登入後複製
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章
<🎜>:種植花園 - 完整的突變指南
3 週前
By DDD
<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
如何修復KB5055612無法在Windows 10中安裝?
3 週前
By DDD
北端:融合系統,解釋
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
藍王子:如何到達地下室
4 週前
By DDD

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)