php 文件缓存函数

yipeiwu_com7年前PHP代码库
复制代码 代码如下:

function createHashDir($sign)
{
$md5 = md5($sign);
if(!is_dir(MB_CACHE)) mkdir(MB_CACHE);
for($i=1;$i<=4;$i++)
{
$dir .= $md5{$i}.'/';
if(!is_dir(MB_CACHE.$dir))
{
mkdir(MB_CACHE.$dir);
}
}
return MB_CACHE.$dir;
}
function setCacheFile($data,$sign = 'a',$type = 'array',$id = '')
{
$cacheDir = $this -> createHashDir($sign);
if(!empty($data))
{
$id = $id ? $id : $sign;
$cacheFile = $cacheDir.$id.'.php';
$content = $type == 'array' ? var_export($data,true) : $data;
file_put_contents($cacheFile,'<?php $'.$sign.' = '.$content.'; ?>');
}
}
function getCacheFile($sign = 'a',$id = '')
{
$cacheDir = $this -> createHashDir($sign);
$id = $id ? $id : $sign;
$cacheFile = $cacheDir.$id.'.php';
if(is_file($cacheFile) && include_once($cacheFile))
{
return $$sign;
}
}
function getCacheFilePath($sign = 'a',$id = '')
{
$cacheDir = $this -> createHashDir($sign);
$id = $id ? $id : $sign;
return $cacheDir.$id.'.php';
}
function delCacheFile($sign = 'a')
{
$cacheDir = $this -> createHashDir($sign);
$id = $id ? $id : $sign;
$cacheFile = $cacheDir.$id.'.php';
$this -> del_file($cacheFile);
}

相关文章

PHP严重致命错误处理:php Fatal error: Cannot redeclare class or function

1、错误类型:PHP致命错误 Error type: PHP Fatal error Fatal error: Cannot redeclare (a) (previously decl...

PHP+Ajax检测用户名或邮件注册时是否已经存在实例教程

PHP+Ajax检测用户名或邮件注册时是否已经存在是论坛或会员系统中常见的一个重要功能。本文就以实例形式简单描述这一功能的实现方法。具体步骤如下: 一、PHP检测页面 check.php...

ThinkPHP自动验证失败的解决方法

复制代码 代码如下: /* * 登陆 */ public function Login(){ if($_POST['submit']){ $DB = D('Login');//自定义Mo...

php代码审计比较有意思的例子

php代码审计比较有意思的例子

代码审计比较有意思的例子貌似是去年 ecshop支付漏洞偶然出来的一个例子,感觉不错。分享下 复制代码 代码如下:<?php$a=addslashes($_GET['a']);$b...

php数据库备份还原类分享

复制代码 代码如下:<?php/** * 数据库备份还原类 * @author xialeistudio<admin@xialeistudio.net&g...