介绍
小编给大家分享一下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微信开发用缓存解决数据缓存的示例”有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!