Middleware ทำงานลักษระเหมือน Filter ใน HTTP Request หากเข้าเงื่อนไขที่ตั้งไว้ ก็สามารถ สั่ง Redirect หรือ ว่านำมาใช้งานอื่นๆ ได้
namespace
App
\
Http
\
Middleware
;
use
Closure
;
class
CheckAge
{ /** * Handle an incoming request. * * @param \Illuminate\Http\Request $request * @param \Closure $next * @return mixed */
public function
handle
(
$request
,
Closure $next
) {
if
(
$request
->
age
<=
200
) {
return
redirect
('
home
'); }
return
$next
(
$request
); } }
โดย Middleware สามารถทำการ Filter แบบ Before หรือ After ก็ได้
ลักษณะการใช้งาน
แบบเรียกใช้กับ Route ตัวอย่างเดียว
Route::get('/', function () {
//
})->middleware('web');
ใช้งานแบบเป็นกลุ่ม
Route::group(['middleware' => ['web']], function () {
//
});
ก็อธิบายแบบสั้นๆ หากอยากดูเพิ่มเติมสามารถเข้าไปที่ https://laravel.com/docs/5.4/middleware