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

缓存技术:

1.静态缓存

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

2.Memcache和redio缓存

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

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";
    }
时间: 2024-11-29 03:37:26

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

夺命雷公狗---PHP开发APP接口---1(手动编写json)

在php里面按照json的方式产生json数据 接口的定义 <?php class Ren{ /** *按json方式输出通信数据 *param integer $code状态码 *param string $message提示信息 *param array $data数据 */ public static function json($code,$message='',$data=array()){ if(!is_numeric($code)){ return ''; } $result =

夺命雷公狗---PHP开发APP接口---2(手动编写XML)

封装通信接口的方法 PHP生成XML数据 1.组装字符串 2.使用系统类 DomDocument XMLWriter SimpleXML 这些类均可在PHP手册上查找到 如: DOMDocument::createElement — Create new element node(创建一个新的节点) 具体使用方法手册下面找到的列子: <?php $dom = new DOMDocument ( '1.0' , 'utf-8' ); $element = $dom -> createElemen

夺命雷公狗---微信开发23----客服消息接口基础和推送文本

我们这边课程里面一共用到了三个文件,分别是WeChat.class.php和common.php以及index.php 我们在写这个功能之前也要学会查手册,手册我们可以在微信开发这里找到,如下所示: 点击进去后我们将会看到客服接口,我们可以点击下进去看看里面有什么动动 这里有一个发送文本消息的,我们点击进去看下 这里很明显就看到文本消息是通过一个json数据来进行实现的,废话不多说,开工 这里我们先来写一个WeChat.php的文件,这里作用主要适用于封装一个CURL上传类的,代码如下所示: <

夺命雷公狗---微信开发27----客服消息接口基础和推送图文消息

按照25课的套路在改下index.php即可实现,代码如下所示: <?php /** * wechat php test */ //define your token require_once "common.php"; //这里是引入curl发送函数的类 require_once 'WeChat.class.php'; define("TOKEN", "twgdh"); //这里让这个类继承了curl发送参数的类 class wechat

夺命雷公狗---微信开发39----微信语言识别接口1

语音识别接口的基本介绍 注意: 由于客户端缓存,开发者开启或者关闭语音识别功能,对新关注者立即生效,对已关注用户需要24小时生效,开发者可以从新关注帐号进行测试. 我们可以在测试号下方的体验接口权限表里面找到“接收语音识别结果”,如下图所示 现在这里是显示的关闭,就是开启,如果想使用,那么就必“关闭”. 点击一下开启后,他就会问你是否关闭,所以这里的意思是相反的,如图所示: 然后再点击一下确定即可关闭. 不过我们现在要对他进行开发所以这里就要显示关闭这两个字,然后点击“接收语音识别结果”即可进入

夺命雷公狗---微信开发48----获取用户地理位置接口(3)

这节课程我们来做一个游戏,这个游戏的名字叫“寻找美女做老婆”, 用户该游戏后,每隔5s(秒)会收到他距离未来老婆的信息,如果找到美女后,输入“老婆”即可成功. 这次我们涉及到一个车联网API,我们先来看下他在哪,张成什么样. http://lbsyun.baidu.com/index.php?title=car 找到接口说明,里面有一个测距,如下所示: 我们可以看到这就是他的接口 参数说明以及返回的参数如下所示: 很明显他就是返回一个XML或者是json格式的数据,默认返回的是一个XML格式的数

夺命雷公狗---微信开发47----获取用户地理位置接口(2)

我们现在要做的是查找距离最近的“肯德基”,我们需要通过百度提供的LBS云服务定位距离您最近的肯德基,该程序需要到LBS后台进行相关设置,然后在完成程序 用户在客户端输入“肯德基”公众号就会自动回复距离用户最近的”肯德基“ 废话不多说,我们先到http://developer.baidu.com/里面找到LBS云------再到服务接口--------再到LBS云,如下图所示: 点击进来后,我们首先要获取一个密钥, 然后出了红色框部分填下数据即可,别的地方都不用改,直接提交即可 上面的0.0.0.

夺命雷公狗---微信开发26----客服消息接口基础和推送视频

我们按照上一课的套路继续改写下index.php即可实现,代码如下所示: <?php /** * wechat php test */ //define your token require_once "common.php"; //这里是引入curl发送函数的类 require_once 'WeChat.class.php'; define("TOKEN", "twgdh"); //这里让这个类继承了curl发送参数的类 class we

夺命雷公狗---微信开发25----客服消息接口基础和推送语音

按照23课的部署,我们再进行改造下WeChat.class.php文件,将get_token.php的代码封装到WeChat类中去,WeChat.class.php代码如下: <?php class WeChat{ //我把请求内容封装到类里面 protected function http_request($url, $data=null){ //我们使用curl函数 //初始化 $ch = curl_init(); //设置变量 curl_setopt($ch, CURLOPT_URL,$u