SW-X的 缓存 常用操作,依赖\x\Cache组件。
从v2.5.8版本起支持。
内置支持的缓存类型包括file、redis和memory。
缓存配置直接修改/config/目录下面的cache.php文件。
公共的缓存配置参数包含:
| 参数名 | 描述 |
|---|---|
| type | 缓存类型或者缓存驱动类名 |
| expire | 缓存有效期(秒),0表示永久有效 |
| prefix | 缓存标识前缀 |
设置缓存有效期:
$Cache = new \x\Cache();
$Cache->set('name', $value, 3600);
如果设置成功返回true,否则返回false。
当然,你也可以不设置有效期,默认使用配置文件中的expire字段。
$Cache = new \x\Cache();
$Cache->set('name', $value);
只对数值类型的缓存数据,可以使用自增操作,例如:
$Cache = new \x\Cache();
// name自增(步进值为1)
$Cache->inc('name');
// name自增(步进值为3)
$Cache->inc('name',3);
成功返回true,否则返回false。
只对数值类型的缓存数据,可以使用自减操作,例如:
$Cache = new \x\Cache();
// name自减(步进值为1)
$Cache->dec('name');
// name自减(步进值为3)
$Cache->dec('name',3);
成功返回true,否则返回false。
获取缓存数据可以使用:
$Cache = new \x\Cache();
var_dump($Cache->get('name'));
如果name值不存在,则默认返回 false。
支持指定默认值,例如:
$Cache = new \x\Cache();
var_dump($Cache->get('name', 'sw-x'));
表示如果name值不存在,则返回字符串sw-x。
删除缓存可以使用:
$Cache = new \x\Cache();
var_dump($Cache->rm('name'));
成功返回true,否则返回false。
获取并删除缓存可以使用:
$Cache = new \x\Cache();
var_dump($Cache->pull('name'));
成功返回缓存数据,否则返回false。
Cache组件默认使用default标识节点下的缓存配置,
也可以在实例化时,传入指定的标识节点名称:
$Cache = new \x\Cache('test');
var_dump($Cache->get('name'));
同时,也支持使用store()方法,修改使用的配置节点,参数是节点名称:
$Cache = new \x\Cache();
// 切换配置节点
$Cache->store('test');
var_dump($Cache->get('name'));
File类型的缓存驱动,由于考虑性能关系,底层并没有使用文件锁,所以在inc/dec会存在并发争抢的可能。Memory类型的缓存驱动,由于考虑性能关系,底层并没有限制内存占用的最大上限,和缓存数量,所以会存在内存被无限使用的可能。建议:实际开发中,应根据不同的业务场景,选择合适的缓存驱动。
SW-X