Laravel 缓存 app\storage\cache
这里简单介绍以文件形式存储的方式,学到后面在来补齐
Laravel默认文件形式存储缓存
使用缓存
use Cache
配置文件位于 config\cache.php
1.缓存存储
put ,add,forever
1.1 put方式 无返回值
Cache::put('key1','value1',10)
// key1:缓存建
//value2:值
//10:缓存有效期 分钟数
1.2 add方式
存储前先判断是否已有相同的缓存,如果有返回false
否则存储缓存 返回true
Cache::add('key1','value1',10);
1.3 forever方式
无返回值 永久有效期
Cache::forever('key','value');
2.缓存取
2.1 Cache::get('key')//没有找到缓存返回null
2.2 Cache::get(key4,function(){
Cache::put('key4','value4',10)//获取key4缓存,如果没有则创建
})
2.3 Cache::pull('key')//取出后删除
3.缓存删
3.1 Cache::forget('key');//删除成功返回true 否则返回false
3.2 if(Cache::has('key3')){
Cache::forget('key3')
//如果key3存在删除
}
3.3 Cache::flush();//清空所有缓存
Laravel的session
1.存/取
//1.1
session(['键'=>'值']);
//取
session('key')
//1.2
session()->put('key','value')
//取
session()->get('key')
2.使用Request对象存储
$req->session()->put('key','value')
//取
$req->session()->get('key')
3.Session 类存取
use Session;
Session::put('key','value');
Session::get('key')
闪存session
有时候你仅想在下一个请求之前在 Session 中存入数据,你可以使用 flash 方法。使用这个方法保存在 session
中的数据,只会保留到下个 HTTP 请求到来之前,然后就会被删除。闪存数据主要用于短期的状态消息:
$request->session()->flash('status', 'Task was successful!');
如果需要保留闪存数据给更多请求,可以使用 reflash 方法,这将会将所有的闪存数据保留给其他请求。如果只想保留特定的闪存数据,则可以使用
keep 方法:
$request->session()->reflash();
$request->session()->keep(['username', 'email']);
4获取所有session
$data = $request->session()->all();
5.判断session是否有某一个值
if ($request->session()->has('users')) {
//如果该值存在且不为 null
}
//或
if ($request->session()->exists('users')) {
//如果该值存在允许为空
}
6.删除session数据
$request->session()->forget('key');//删除一条数据
$request->session()->flush();//删除所有数据