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

本文介绍了PHP中的缓存技术,包括静态缓存和使用Memcache及Redis进行缓存的方法。通过一个具体的例子展示了如何实现缓存数据的生成、获取与删除,并提供了完整的代码示例。

缓存技术:

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";
    }

 

转载于:https://www.cnblogs.com/leigood/p/4955184.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值