怎么在php项目中自定义一个复述,缓存类

  介绍

这篇文章给大家介绍怎么在php项目中自定义一个复述,缓存类,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

php +复述,缓存类

& lt; php ?   class  redisCache  {   ,/* *   *,才能host 美元;:,复述,服务器ip   *,才能port 美元;:,复述,服务器端口   *,才能lifetime 美元;:,缓存文件有效期,单位为秒   *,才能cacheid 美元;:,缓存文件路径,包含文件名   ,*/private 才能;美元主机;   private 才能;美元港口;   private 才能;美元一生;   private 才能;cacheid美元;   private 才能;$数据;   public 才能;美元复述;   ,/* *   *才能,析构函数,检查缓存目录是否有效,默认赋值   ,*/function 才能__construct(一生=1800美元),{   ,,,//配置   ,,,这个→美元host =,“127.0.0.1";   ,,,这个→美元port =,“6379”;   ,,,redis 美元;=,new 复述();   ,,,复述,→美元pconnect ($ this→主机、$ this→端口);   ,,,这个→美元复述,复述,美元=;   ,,,这个→美元cacheid =, $ this→getcacheid ();   ,,,这个→美元lifetime =,一生美元;   ,,,这美元→数据=https://www.yisu.com/zixun/$复述-> hMGet ($ this -> cacheid,数组(“内容”、“creattime”));//print_r ($ this ->复述);//print_r ($ this ->数据);   }/* *   *检查缓存是否有效   */私有函数isvalid () {   $=$ this ->数据;   如果(! $ data[‘内容’])返回false;   如果(时间()- $ data [' creattime ']> $ this ->一生)返回false;   返回true;   }/* *   *写入缓存   * $模式==0,以浏览器缓存的方式取得页面内容   */公共函数编写(模式=0,内容="美元){   开关(模式){   例0:   $内容=ob_get_contents ();   打破;   默认值:   打破;   }   ob_end_flush ();   尝试{   $ this ->复述-> hMset ($ this -> cacheid,数组(“内容”=>内容,美元“creattime”=>时间()));   $ this ->复述-> expireAt ($ this -> cacheid,时间()+ $ this ->一生);   }   捕获(异常$ e) {   $ this ->错误(“写入缓存失败!”);   }   }/* *   *加载缓存   *出口()载入缓存后终止原页面程序的执行,缓存无效则运行原页面程序生成缓存   * ob_start()开启浏览器缓存用于在页面结尾处取得页面内容   */公共函数load () {   如果($ this -> isvalid ()) {   echo $ this ->数据(“内容”);   退出();   }   其他{   ob_start ();   }   }/* *   *清除缓存   */公共函数清洁(){   尝试{   $ this ->复述-> hDel ($ this -> cacheid,数组(“内容”、“creattime”));   }   捕获(异常$ e) {   $ this ->错误(“清除缓存失败!”);   }   }/* *   *取得缓存文件路径   */私有函数getcacheid () {   返回$ this -> dir.md5 ($ this -> geturl ()) $ this -> ext;   }/* *   *取得当前页面完整的url   */私有函数geturl () {   $ url=";   如果收取($ _SERVER [' REQUEST_URI '])) {   $ url=$ _SERVER [' REQUEST_URI '];   }   其他{   $ url=$ _SERVER [' Php_SELF '];   $ url。=空($ _SERVER [' QUERY_STRING ']) ?”:‘?’。$ _SERVER [' QUERY_STRING '];   }   返回$ url;   }/* *   *输出错误信息   */私有函数误差(str) {   回声
。str美元。”
;   }   }//用法://require_once (“redisCache.php”);//缓存美元=new redisCache (10);//设置缓存生存期//如果美元($ _GET [' clearCache '])缓存->清洁();//其他$缓存-> load ();//装载缓存,缓存有效则不执行以下页面代码////页面代码开始////页面代码结束//缓存->写();//首次运行或缓存过期,生成缓存   ?>

关于怎么在php项目中自定义一个复述,缓存类就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看的到。

怎么在php项目中自定义一个复述,缓存类