- N +

opencart之缓存数据

原标题:opencart之缓存数据

导读:

说到缓存数据,那么我们这里就要说明一下为啥需要缓存数据,在我们游览网站时,网站的商品或其他页面时,大部分页面信息需要查询数据库,每次打开页面时都需要去查询数据库,一旦访问量过多...

文章目录 [+]

  1. 说到缓存数据,那么我们这里就要说明一下为啥需要缓存数据,在我们游览网站时,网站的商品或其他页面时,大部分页面信息需要查询数据库,每次打开页面时都需要去查询数据库,一旦访问量过多就会增加服务器的负担,所以这里生成缓存数据文件后,它就不会再去查询数据库直接访问缓存文件,这样就能够更快捷更方便的查询到数据信息。

  2. 下面就给大家示列一个生成缓存的案列(这个生成缓存的方法是opencart自带的方法,可直接生成缓存文件很方便,它的类库文件路径system/library/cache.php,里面的具体方法感兴趣的可自行查看)
    这个文件是网站前端商品详情页的controller文件  catalog\controller\product\product.php
    ①读取缓存文件

//检查是否存在缓存文件
$cache_key = 'product_.'.$this->session->data['language'].'_'.$product_id;  //设置缓存文件的名称,我这里是根据网站当前的语言代码和商品id来设置的文件名称,这里我们要尽量确保名称唯一。
$return = $this->cache->get($cache_key);    //查找改商品的缓存文件 
if ($return) {
   return $this->response->setOutput($this->load->view('product/product', $return));
}

     如下图这个查询缓存文件的代码我们需要放在商品查询之前,否则它就失去了它的意义~
     1.png
      ②生成缓存文件

$jsonStr = json_encode($data);   //转化数据
$return = json_decode($jsonStr,true);//转化数据
$this->cache->set($cache_key, $return); //将所有数据生成到缓存文件

    生成缓存文件的代码需要放在输出模板最后一步之前,因为这样能保证把所有的数据都保存到缓存文件中
  2.png


    3.缓存文件存放的路径 storage\cache, 缓存的方法虽然好用,但在修改和更新商品数据或网站功能之后,一定要记得删除这些缓存文件,或者写一个方法来自动清空这些缓存文件,否则可能会出现异常问题。

EM~0FI1X3((}YEIBDU~L552.png

有好的文章希望我们帮助分享和推广,猛戳这里我要投稿

  • 原文地址:ocxd
  • 温馨提示:文章内容系作者个人观点,不代表OC小店对观点赞同或支持。
  • 版权声明:本文转载米哑版权归原作者所有,欢迎分享本文,转载请保留出处!

返回列表
上一篇:
下一篇:

发表评论中国互联网举报中心

快捷回复:

    评论列表 (暂无评论,共4205人参与)参与讨论

    还没有评论,来说两句吧...