Session
Last updated
Was this helpful?
Last updated
Was this helpful?
参考:
routes/web.php文件中配置,
Laravel 带有开箱即用的web
和api
中间件,包含了可能应用到 Web UI 和 API 路由的通用中间件:
Route::group(['middleware' => ['web']], function() {
Route::any('session1', ['uses' => 'StudentController@session1']);
Route::any('session2', [
'as' => 'session2',
'uses' => 'StudentController@session2'
]);
Route::any('response', ['uses' => 'StudentController@response1']);
});
文件示例App\Http\Controllers\StudentController
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Session;
class StudentController extends Controller
{
public function session1(Request $request)
{
// 1. HTTP request session();
// $request->session()->put('key1', 'value1');
// echo $request->session()->get('key1');
// 2. session()
// session()->put('key2', 'value2');
// echo session()->get('key2');
// 3. Session
// 存储数据到Session
// Session::put('key3', 'value3');
// 获取Session的值
// echo Session::get('key3');
// 不存在则取默认值
// echo Session::get('key4', 'default');
// 已数组的形式存储数据
// Session::put(['key4' => 'value4']);
// 把数据放到Sesion的数组中
// Session::push('student', 'sean');
// Session::push('student', 'imooc');
// $res = Session::get('student', 'default');
// var_dump($res);
// 取出数据并删除
// $res = Session::pull('student', 'default');
// var_dump($res);
// 取出所有的值
// $res = Session::all();
// dd($res);
// 判断session中某个key是否存在
// if (Session::has('key11')) {
// $res = Session::all();
// dd($res);
// } else {
// echo '你们老大不在';
// }
// 暂存数据
Session::flash('key-flash', 'val-flash');
}
public function session2(Request $request)
{
return Session::get('message', '暂无信息');
// return 'session2';
//echo Session::get('key-flash');
// 获取session所有的数据
// $res = Session::all();
// dd($res);
// 删除session中指定的key的值
// Session::forget('key3');
// 清空所有sesion信息
// Session::flush();
// $res = Session::all();
// dd($res);
}
public function response1()
{
// 4. 重定向
// return redirect('session2');
// return redirect('session2')->with('message', '我是快闪数据');
//action()
// return redirect()->action('StudentController@session2')
// ->with('message', '我是快闪数据');
// route()
// return redirect()->route('session2')
// ->with('message', '我是快闪数据');
return redirect()->back();
}
}