score_cates.auto_cache.php 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. <?php
  2. //商城的导航dz_chh
  3. class score_cates_auto_cache extends auto_cache{
  4. public function load($param)
  5. {
  6. $key = $this->build_key(__CLASS__,$param);
  7. $GLOBALS['cache']->set_dir(APP_ROOT_PATH."public/runtime/data/".__CLASS__."/");
  8. $return = $GLOBALS['cache']->get($key);
  9. if($return === false)
  10. {
  11. $cates_list = $GLOBALS['db']->getAll("SELECT * FROM ".DB_PREFIX."goods_cate WHERE is_effect=1 and is_delete = 0 and pid= 0 order by sort asc");
  12. $cates_blist=array();
  13. foreach($cates_list as $k=>$v)
  14. {
  15. $cates_blist[$v['id']]=$v;
  16. //子分类
  17. $sub_list=$GLOBALS['db']->getAll("SELECT id,name FROM ".DB_PREFIX."goods_cate WHERE is_effect=1 and is_delete = 0 and pid= ".intval($v['id'])." order by sort asc");
  18. $cates_blist[$v['id']]['sub_list']=$sub_list;
  19. //当前大分类id加子分类id
  20. $cur_cate_ids=array();
  21. $cur_cate_ids[]=$v['id'];
  22. foreach($sub_list as $kk=>$vv)
  23. {
  24. $cur_cate_ids[]=$vv["id"];
  25. }
  26. $cates_blist[$v['id']]['cur_cate_ids']=$cur_cate_ids;
  27. }
  28. //所有子分类
  29. $cates_sublist_all= $GLOBALS['db']->getAll("SELECT * FROM ".DB_PREFIX."goods_cate WHERE is_effect=1 and is_delete =0 and pid > 0 order by sort asc");
  30. $cates_sublist=array();
  31. foreach($cates_sublist_all as $k=>$v)
  32. {
  33. $cates_sublist[$v['id']]=$v;
  34. }
  35. $return=array();
  36. $return['cates_blist']=$cates_blist;
  37. $return['cates_sublist']=$cates_sublist;
  38. $GLOBALS['cache']->set_dir(APP_ROOT_PATH."public/runtime/data/".__CLASS__."/");
  39. $GLOBALS['cache']->set($key,$return);
  40. }
  41. return $return;
  42. }
  43. public function rm($param)
  44. {
  45. $key = $this->build_key(__CLASS__,$param);
  46. $GLOBALS['cache']->set_dir(APP_ROOT_PATH."public/runtime/data/".__CLASS__."/");
  47. $GLOBALS['cache']->rm($key);
  48. }
  49. public function clear_all()
  50. {
  51. $GLOBALS['cache']->set_dir(APP_ROOT_PATH."public/runtime/data/".__CLASS__."/");
  52. $GLOBALS['cache']->clear();
  53. }
  54. }
  55. ?>