PHP微信开发用缓存解决数据缓存的示例

  介绍

小编给大家分享一下PHP微信开发用缓存解决数据缓存的示例,希望大家阅读完这篇文章之后都有所收获、下面让我们一起去探讨吧!

用PHP进行微信开发时,碰到access_token长久保存的问题,以前都是用框架里的缓存直接集,得到一下就完了。现在没框架可用了,只好自己动手写一个缓存暂时用。

这个缓存类用来缓存一些具有时效性的数据,比如微信基础接口的access_token,网页Auth验证的access_token等

<强>下面的代码使用本地文件进行数据的缓存,

//测试   ,cache 美元;=,new 缓存();   美元,缓存→dir =,“. ./cc/?   ,//缓存→美元setCache (“zhang",,“zhangsan",, 100);   ,echo 缓存→美元getCache (“zhang");   ,//缓存→美元removeCache (“zhang");   ,   美元,缓存→setCache (“liu",,“liuqi",, 100);   ,echo 缓存→美元getCache (“liu");      缓存,class  {=,public  cacheFile 美元;“cache.json",,//文件=,public  dir 美元;“。“/cach3/,//目录      ,//缓存   ,public  function  setCache(名称、美元,val美元,美元expires_time) {   美元,美元file =,这→hasFile ();   ,//字符串转数组   ,str 美元;=,file_get_contents($文件);   ,arr 美元;=,json_decode (str美元,,真的);   ,   ,//值为空,则移除该缓存   美元,如果(空(val)) {   ,设置(arr[名字]美元美元);   ,其他}{   ,arr[名字]美元美元=,数组(“value"=祝辞val美元,“expires_time"=祝辞expires_time美元,“add_time"=在时间());   }大敌;   ,//数组转字符串   ,str 美元;=,json_encode (arr);   美元,美元写入文件,,str);   ,}   ,public  function  getCache(美元名称){   美元,美元file =,这→hasFile ();   ,   ,//字符串转数组   ,allArr 美元;=,json_decode (str美元,,真的);   美元,美元arr =, allArr[名字]美元;      ,如果(! $ arr  | |,时间(),祝辞,(arr美元(“expires_time"), +, arr美元[“add_time"])) {   ,$ this→removeCache($);,//过期移除   ,return 假;   ,}   ,return  arr美元(“value");   ,}   ,public  function  removeCache(美元名称){   美元,美元这→setCache(名字,,& # 39;& # 39;,,0);   ,}   ,   ,private  function  hasFile () {   ,//如果不存在缓存文件,则创建一个   ,如果(! file_exists ($ this→dir)) {   ,mkdir ($ this→dir);   ,}   ,如果(! file_exists ($ this→dir 只$ this→cacheFile)) {   ,联系($ this→dir 只$ this→cacheFile);   ,}   ,return 这→美元dir 只$ this→cacheFile;   ,}   }

上面的缓存类共设置有,,删除三种操作。另外还可以自定义缓存文件的保存路径,只要设置缓存的dir属性就可以了。

看完了这篇文章,相信你对“PHP微信开发用缓存解决数据缓存的示例”有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!

PHP微信开发用缓存解决数据缓存的示例