访问Lumen / Laravel URL参数

时间:2016-08-11 11:49:23

标签: php laravel

我想我在这里错过了一些非常明显的东西,但是你如何访问Lumen中的URL参数?我有以下路线:

$app->get('user/{id}', ['uses' => 'userController@testId']);

然后在我的用户控制器中,我有:

public function testId(Request $request) {

    return $request->input('id');
}

但即使在这个非常基本的例子中,我仍然错过了ID?

3 个答案:

答案 0 :(得分:1)

好的,没关系,因为我认为我是这里的工具。

对于其他任何人(以及将来我在谷歌遇到完全相同的问题之后登陆此页面的未来)文档说明:

  

如果您的控制器方法也期望从路由参数输入,只需在其他依赖项之后列出路由参数。例如,如果您的路线定义如下:   $app->put('user/{id}', 'UserController@update');

     

public function update(Request $request, $id) { // }

因此,您需要将任何URL参数传递给函数,它们似乎无法通过Lumens $ request对象访问。

public function testId(Request $request, $id) {

    return $id;

}

答案 1 :(得分:1)

根据https://laravel.com/docs/master/requests,您可以执行以下操作:

$app->get('user/{id}', ['uses' => 'userController@testId']);

public function testId(Request $request, $id) {
      //$id is from the path
}

原因是id是请求路径的一部分而不是请求输入

答案 2 :(得分:0)

试试这个

public function testId(Request $request) {
    return $request->id;
}