您的位置:首页 > 移动开发

夺命雷公狗---PHP开发APP接口---5(核心技术之缓存技术)

2015-11-11 09:14 627 查看
缓存技术:

1.静态缓存

保存在磁盘上的静态文件,用PHP生成数据放入静态文件中

2.Memcache和redis缓存

缓存主要是为了减少服务器压力。

PHP操作缓存

1.生成缓存

2.获取缓存

3.删除缓存

<?php
class File{
private $_dir;
const EXT = '.txt';
public function __construct(){
$this -> _dir = dirname(__FILE__).'/files'; //默认存放缓存目录的文件夹
}
public function cacheData($k,$v='',$path=''){
$filename = $this->_dir.$path.$k.self::EXT;

if($v!==''){//将$v值写入缓存
if(is_null($v)){
return @unlink($filename);
}
$dir = dirname($filename);
if(!is_dir($dir)){ //判断目录是否存在
mkdir($dir,0777); //不存在那就创建目录
}

return file_put_contents($filename,json_encode($v));
}

if(!is_file($filename)){
return false;
}else{
return json_decode(file_get_contents($filename),true);
}
}
}


测试代码如下:

<?php
include('./7.php');
//测试的xml数据
$data = array(
'id' => 1,
'name' => 'lisi',
'type' => array(1,7,89,array('5','a','d','d'))
);
$file = new File();
//这里传的$data的意思是如果值存在就打开缓存,如果不存在就生成缓存
if($file -> cacheData('index_mk_cache'/*,$data*/,null)){
//var_dump($file->cacheData('index_mk_cache'));exit;
echo "success";
}else{
echo "error";
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: