# 在项目中使用
在服务器上安装了 memcached 服务之后,之后又安装了相应的 php memcached 扩展,那么怎么在 laralve 项目中使用呢?
# 修改缓存配置项
查看 cache.php 文件中的缓存驱动
'default' => env('CACHE_DRIVER', 'file'),
修改 .env 配置项
CACHE_DRIVER=memcached
修改缓存驱动配置项之后,就可以使用 Cache 门面进行读写了
# store 方法
在不修改缓存配置项的时候,可以使用 Cache 门面的 store 方法访问各种缓存系统。
# 缓存数据的操作
# 存储项目
Cache::store('memcached')->put($key, $value, $ttl);
Cache::store('memcached')->put($key, $value, now()->addMinutes(10));
// add 方法只会将缓存存储中不存在的项目添加到缓存中
Cache::store('memcached')->add($key, $value, $ttl);
Cache::store('memcached')->remember($key, $ttl, function () {
// 此次的 cache_value 为回调函数的返回值
return $cache_value;
});
$value = Cache::rememberForever($key, function () {
// 此次的 cache_value 为回调函数的返回值
return $cache_value;
});
Cache::store('memcached')->forever($key, $value);
#### 递增递减
Cache::store('memcached')->increment($key);
Cache::store('memcached')->decrement($key);
Cache::store('memcached')->increment($key,$amount);
Cache::store('memcached')->decrement($key,$amount);
# 读取缓存
// 检索
Cache::store('memcached')->get($key, $default);
Cache::store('memcached')->get($key, function(){
// 返回默认值
return 'default_value';
});
# 删除缓存
// 删除
Cache::store('memcached')->forget($key);
// 也可以使用零或者负数来删除项目
Cache::store('memcached')->put($key, $value, 0);
Cache::store('memcached')->put($key, $value, -5);
// flush 方法清除整个缓存,它比较暴力,不会考虑缓存配置,会从缓存中删除所有条目
Cache::flush();