<?php
namespace App\Http\Middleware;
use Closure;
class TestMiddleware
{
public function handle($request, Closure $next)
if($request->input('age')<18)
return redirect()->route('refuse');
return $next($request);
}
}
上面這段程式碼中,
1) 第三行的use Closure 中的closure是類別?怎麼來的?
2)第六行的handle方法中 Closure $next是什麼意思?
3)第9行的 $next($request),這是什麼用法? $next到底是函數還是變數?
Closure是php自帶的用來代表匿名函數的類別! !去php手冊看看就明白你問的這幾個問題了。
Closure 是php實作閉包(匿名函數)用的類別。
http://php.net/manual/zh/class.closure.php
$next是綁定的函數。