Laravel 5 如何获取当前控制器的function名称?
经常看到Request $request
这样的写法,问下这个知识点叫什么?
public function __construct(Guard $auth)
{
$this->auth = $auth;
}
public function store(Request $request)
{
//
}
Laravel 5 如何获取当前控制器的function名称?
经常看到Request $request
这样的写法,问下这个知识点叫什么?
public function __construct(Guard $auth)
{
$this->auth = $auth;
}
public function store(Request $request)
{
//
}
第一个问题:
在Laravel中Route::current()->getActionName();
可以获取当前Action的详细名称,可能不你直接想要的结果,自己对上述方法返回的结果做下处理就好了。
第二个问题:
这里的 $request 参数是 Illuminate\Http\Request ,通过依赖注入传递给Controller。
在Laravel中Controller都可以在顶部use Illuminate\Http\Request 后,在参数里面使用 Request。
而 Request 包含了客户端发送过来的请求内容。
这种是依赖注入,你在方法的形参上写Request $request,表示你需要Request这个类,或者这个类的实现,用$request这个变量来接收.实际上你并没有提供Request类或者相关的实例化,但是却能跑起来,因为框架帮你依赖注入了这个Request类.Request常常用于请求的,处理请求的时候会依赖这个
依赖注入
把一个对象赋值到属性中调用