ecshop源码分析——静态缓存

ecshop源码分析——静态缓存

ID:41566172

大小:67.23 KB

页数:10页

时间:2019-08-27

ecshop源码分析——静态缓存_第1页
ecshop源码分析——静态缓存_第2页
ecshop源码分析——静态缓存_第3页
ecshop源码分析——静态缓存_第4页
ecshop源码分析——静态缓存_第5页
资源描述:

《ecshop源码分析——静态缓存》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、static_caches缓存文件存放在ecshop/temp/static_caches下

2、hj先來看缓存工作的2个主要函数,写缓存和读缓存。该畅数在ecshop/includes/lib_base.php写缓存Php代码1./**2.□*将结果写进缓存文件*3•4.*@paramsstring$cache_name缓存文件的名字5・*@paramsstring$caches缓存的内容6・*7.*@returm8.*/9.functionwrite_static_cache($cache_name^$

3、caches)10.{11.if((DEBUG_MODE&2)==2)12.{13.returnfalse;14.}15.〃缓存的路径16.$cache_file_path=ROOT_PATH•'/temp/static_caches/'•$cache_namePhp';17.//缓存内容{content18.$content="?phpr";19.$content•二f,$data=H•var_export({caches^true)・";rrT;20.$content.=H?>H;21.

4、〃将内容写进缓存22.file_put_contents($cache_file_path,$content?LOCK_EX);23.}读缓存Php代码1./**2.*读结果缓存文件3.*4.*@paramsstring$cache_name//缓存文件的名字5.*6.*@returnarray$data7.*/8.functionread_static_cache($cache_name)9.{10.if((DEBUG_MODE&2)==2)11.{12.13.14.15.returnfalse;}〃

5、注意这里的静态变量用法static$result=array();16.17.18.〃如果己经从缓存文件中读取了数据则直接返回结果if(!emptyempty($resu$cache_name])){19.20.return$result[$cache_name];}21.22.〃缓存文件的路径$cache_f订e_path=ROOT_PATH・'/temp/static_caches/'・$cache_namePhp';23.24.〃如果缓存文件存在就读取缓存if(file_exists($cache

6、_file_path))25.26.27.28.29.{include_once($cache_file_path);$result[$cache_name]=$data;return$result[$cache_name];}30.31.32.33.else{returnfalse;}34.}举一个ecshop屮具体应丿IJ的例子來说明ecshop/inlucdes/lib_goods.phpfunctionget_recommend_goods首页中展示的新品推荐、热卖商品、今日特价就是从这里来的P

7、hp代码1./**2.3.*获得推荐商品*4.*@accesspublic5・6・7.*@paramstring$type推荐类型,可以是best,new,hot*@returnarray*/8.9.//代码我省略了一些,主要说明与缓存相关的代码*/10.functionget_recommend_goods($type=$cats='')11.{12./*省略的代码。。。。*/13./*读取缓存文件*/14.$data=read_static_cache('recommend_goods');15.i

8、f($data==false)//如果缓存文件不存在16.{17./*从数据库中获取需要的数据*/18./*将从数据库中获取的数据写入到相应的缓存文件当中*/19.write_static_cache('recommend_goods',$goods_data);20.}else//如果缓存文件存在21.{22./*直接使用缓存数据*/23.$good_data=$data;24.}25.]Java代码1.〃缓存结果在这里4.array(5.0=

9、>6.array(7.'goods_id'=>'33',8.'sort_order1=>9.),10.1=>11.array(12.'goods_id'=>'19*,13.'sort_order1=>14.),15.2=>16.array(17.'goods_id'=>'24',18.'sort_order1=>19.),20.3=>21.array(22.•goodS-id1=>'20',23.'sort_order1=>24.),25.

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。