Laravel控制器参数的用途


Laravel controller parameter's purpose?

namespace App'Http'Controllers;
use App'User;
use App'Http'Controllers'Controller;
class UserController extends Controller
{
    /**
     * Show the profile for the given user.
     *
     * @param  int  $id
     * @return Response
     */
    public function showProfile($id)
    {
        return view('user.profile', ['user' => User::findOrFail($id)]);
    }
}

当我们可以使用"Input::get(id)"时,为什么我们要在laravel控制器上放置参数?任何人都可以给出我需要在控制器上使用参数的情况的示例吗?

在使用 Input::get('id') 的情况下,显示配置文件的请求将类似于

yourdomain.com/profile?id=2

但是,如果您想根据类似的东西显示用户的个人资料,

yourdomain.com/profile/2

yourdomain.com/profile/john

您需要一个控制器参数。

在秒情况下,您可以简单地将参数绑定到用户模型。

public function showProfile(User $user)
{
    return view('user.profile', ['user' => $user);
}