### 什么是缓存,为什么要用缓存,什么情况下用缓存
为了在大并发时提供更快的响应速度,HDPHP 框架提供了缓存处理机制,操作简单、高效 ,涵盖 file 缓存、memcache、redis、mysql 缓存可以根据需要指派不同的缓存处理机制,只需要在配置文件中设置即可。
哪些东西需要缓存:经常要用到,但变动不经常的这些数据
比例主表中有几项字段是使用关联表中的序号,而这几张关联表几乎不会变动,而又经常被主表调用。这时这几张关联表就最好适用缓存。
缓存:把指定内容读取后生成临时文件存储在指定目录之中。这就是缓存。
### 缓存与模板缓存
1、道理是一样的,经常用但不常变动的模板,缓存起来,随时准备被调用。
2、模板缓存的是模板文件生成的HTML代码。
### 设置缓存
Cache::set('data',['name'=>'houdunwang.com'],3600);
//缓存数据3600秒
参数1:缓存名,由例可知,是一个二维数组
参数2:缓存值
参数3:缓存时长
针对文件缓存,可以使用简化方法
f('hd','houdunwang.com');
f('hd','houdunwang.com',3600,'storage/cache'); //指定存储路径
### 获取值
Cache::get('data');
针对文件缓存,可以使用简化方法
f('hd');
f('hd','[get]',3600,'storage/cache'); //同样指定了读取路径
### 删除
Cache::del('data');
f(null); //清空所有缓存,同样可以添加路径
f('hd','[del]') //删除指定的缓存
f('hd','[del]',3600,'storage/cache/field'); //删除指定路径下的指定缓存
### 清空
Cache::flush();
清空会将所有缓存内容全清空
### 驱动
Cache::driver('file')->set('name','后盾网');
其实就是设置缓存方式,以文件形式,以数据库形式
### 使用注意
1、使用获取缓存来判断所要获取的缓存是否存在
if(!Cache::get('user')){}
//当指定缓存不存在时,返回null
2、缓存的存储时间,不会因为其它任何原因而延长!
3、被缓存的数据发生变动后,应当立即更新缓存内容。如果实现?分散实现。