首先说一下laravel的缓存配置文件(config/cache.php):
<?php
return [
//默认缓存类型为 文件缓存
'default' => env('CACHE_DRIVER', 'file'),
//下面是laravel支持的各个缓存方式的设置
//driver=>缓存方式
'stores' => [
'apc' => [
'driver' => 'apc',
],
'array' => [
'driver' => 'array',
],
'database' => [
'driver' => 'database',
//table => 数据库缓存的表名
'table' => 'cache',
'connection' => null,
],
'file' => [
'driver' => 'file',
//文件缓存 路径为:storage/framework/cache
'path' => storage_path('framework/cache'),
],
'memcached' => [
'driver' => 'memcached',
'servers' => [
[
'host' => env('MEMCACHED_HOST', '127.0.0.1'),
'port' => env('MEMCACHED_PORT', 11211),
'weight' => 100,
],
],
],
'redis' => [
'driver' => 'redis',
'connection' => 'default',
],
],
//缓存的前缀
'prefix' => 'laravel',
];
在此以文件缓存作为事例:
//添加缓存 缓存名为key1 值为value1 缓存时间为10分钟
Cache::put('key1','value1',10);
//add 判断是否存在key1 存在设置失败 不存在才会设置成功 返回bool值
$ca = Cache::add('key1','value1',10);
$ca0 = Cache::add('key2','value2',10);
var_dump($ca);
var_dump($ca0);
//forever 永久保存
Cache::forever('key3','balie3');
//取出缓存的值
Cache::get('key1');
//pull取出缓存值,但只取一次 然后删除此缓存
Cache::pull('key2');
//判断缓存是否存在
if(Cache::has('key3')){
echo '存在key3';
}
//forget 删除缓存 删除成功返回true
Cache::forget('key3');
//使用flush方法清除所有缓存
Cache::flush();