文件缓存是把数据保存在硬盘上的一种缓存方式。可以在一定程度上减少数据库资源和处理器资源,但访问量大时会造成大量硬盘读写。
YurunPHP文件缓存功能支持原始数据存储和序列化数据存储。
原始数据存储一般用于需要include的缓存。
序列化数据存储支持存储字符串、数组等几乎所有类型的数据,并且可以设置有效时间,且支持防止数据泄露功能。
建议根据实际情况来选择合适的缓存方式。
## 相关配置项
#### CACHE_FOLDER
缓存目录文件夹名,默认为Cache
#### CACHE_EXT
缓存文件扩展名,默认为.php
## 方法
#### 写入缓存
Cache::set($alias, $value = null, $config = array(), $name = 'File')
| 参数名 | 描述 |
| -- | -- |
| $alias | 缓存名称 |
| $value | 缓存数据 |
| $config | 额外参数 |
| $name | 缓存类型,默认为File,文件缓存。 |
// 缓存文件保存路径为【缓存目录/】,缓存文件内容是序列化的YurunPHP
Cache::set('yurun','YurunPHP');
// 缓存文件保存路径为【缓存目录/people/】,缓存文件内容是YurunPHP
Cache::set('people/yurun','YurunPHP',array('raw'=>1));
// 缓存文件有效期设为3600秒
Cache::set('yurun','YurunPHP',array('expire'=>3600));
#### 读取缓存
Cache::get($alias, $default = false, $config = array(), $name = 'File')
| 参数名 | 描述 |
| -- | -- |
| $alias | 缓存名称 |
| $default | 缓存不存在或过期时返回的值,默认为false |
| $config | 额外参数 |
| $name | 缓存类型,默认为File,文件缓存。 |
// 获取缓存,如果不存在则返回YurunPHP
Cache::get('yurun','YurunPHP');
// 获取缓存文件真实内容
Cache::get('yurun','YurunPHP',array('raw'=>1));
// 缓存不存在时的回调,如果需要保存缓存需要手动调用Cache::set()方法
echo Cache::get('abc', function(){
return '返回内容';
});
#### 删除缓存
Cache::remove($alias, $config = array(), $name = 'File')
| 参数名 | 描述 |
| -- | -- |
| $alias | 缓存名称 |
| $config | 额外参数 |
| $name | 缓存类型,默认为File,文件缓存。 |
Cache::remove('yurun');
#### 清空缓存目录
Cache::clear($name = 'File')
| 参数名 | 描述 |
| -- | -- |
| $name | 缓存类型,默认为File,文件缓存。 |
Cache::clear();
#### 判断缓存是否存在
Cache::cacheExists($alias, $config = array(), $name = 'File')
| 参数名 | 描述 |
| -- | -- |
| $alias | 缓存名称 |
| $config | 额外参数 |
| $name | 缓存类型,默认为File,文件缓存。 |
Cache::cacheExists('yurun');