1. Sesion trong laravel
File thông số kỹ thuật session của Laravel 5. x nằm trong thư mục config / session.php. Tại file này bạn hoàn toàn có thể thông số kỹ thuật lưu session dạng file hay tại bảng, tên bảng session, thư mục chứa file … Mặc định laravel sẽ tàng trữ session của bạn bằng file trong thư mục ‘ storage / framework / sessions ‘
Cách sử dụng session .
Bây giờ ta tạo 1 url để test tại file route
Route::get('demo-session', 'DemoController@testSession' );
Lưu trữ 1 biến trong session và lấy giá trị của biến đó ra trong Controller
public function testSession(){ Session::put('user', 'Thông tin user'); // Tạo session tên user với giá trị là Thông tin user $ss = Session::get('user'); // Lấy giá trị của session ra var_dump($ss); }
Tạo session với key là 1 mảng:
public function testSession(){ Session::put('user.id', '1'); Session::put('user.name', 'Công nghệ 5s'); // Tạo session $ss = Session::get('user'); // Lấy giá trị của session var_dump($ss); }
Kiểm tra 1 session có tồn tại hay không trong Laravel
if(Session::has('user')){ $ss = Session::get('user'); }
Xóa 1 session khỏi Laravel
Session::forget('user');
2. Middleware trong Laravel
Thư mục chứa Middleware : app / Http / Middleware
Laravel 5 mặc định tạo sẵn cho bạn 1 số middleware như Authentication, CSRF token …
Tạo 1 middleware trong Laravel
Bạn có thể tạo thủ công bằng cách tạo 1 file trong thư mục chứa là app/Http/Middleware hoặc tiện lợi hơn là tạo bằng artisan
Mở command line tại thư mục gốc và gõ
php artisan make:middleware CheckLevelMiddleware //CheckLevelMiddleware là tên của middleware
Bây giờ mình code vào Middleware mà mình mới tạo, nằm trong app / Http / Middleware / và thêm vào :
namespace App\Http\Middleware; use Closure; use Auth; class CheckLevelMiddleware { /** * Handle an incoming request. * * @param \Illuminate\Http\Request $request * @param \Closure $next * @return mixed */ public function handle($request, Closure $next) { if(Auth::check()&&Auth::user()->level==1){ // Nếu đã chứng thực và level ==1 (là admin) return $next($request); }else{ return redirect('/'); // Nếu không phải chuyển hướng về trang chủ } } }
Đăng ký middleware mới tạo với Laravel trong app / Http / Kernel. php
Nếu muốn mọi Http Request đều duyệt qua thì bạn tìm đến đoạn protected $middleware và khai báo tại đây
protected $middleware = [ \Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class, \Illuminate\Foundation\Http\Middleware\ValidatePostSize::class, \App\Http\Middleware\TrimStrings::class, \Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class, \App\Http\Middleware\CheckLevelMiddleware::class, ];
Nếu bạn chỉ muốn duyệt tại 1 Route nào đó thôi bạn khai báo tại protected $routeMiddleware
Nếu muốn tạo middleware cho 1 nhóm các Route bạn khai báo tại protected $middlewareGroups
Sau khi đã ĐK middleware trong Kernel bạn hoàn toàn có thể sử dụng tạo route
Route::get('admin', function () { // })->middleware('ChecklevelMiddleware');
Nếu muốn duyệt qua nhiều middleware
Route::get('admin', function () { // })->middleware('Middleware1','Middleware2');
Tạo middle cho 1 nhóm những Route
Route::group(['middleware' => ['web']], function () { // });
Qua bài này chắc những bạn đã hoàn toàn có thể nắm session và middleware trong Laravel 5, nếu muốn xem thêm cách bài khác về Laravel 5 bạn hoàn toàn có thể truy vấn những bài hướng dẫn về Laravel khác trong trang của mình. Chúc những bạn thành công xuất sắc !
Source: https://final-blade.com
Category: Kiến thức Internet