📜  laravel 获取控制器中的 url 参数值 - PHP (1)

📅  最后修改于: 2023-12-03 15:32:35.948000             🧑  作者: Mango

Laravel 获取控制器中的 URL 参数值

在 Laravel 应用程序中,我们经常需要获取从 URL 中传递的参数值。这些参数可以来自于路由或者查询字符串。在控制器中获取这些参数非常简单,本文将介绍如何使用 Laravel 来获取控制器中的 URL 参数值。

从路由中获取参数

在 Laravel 中,我们可以使用路由参数来指定 URL 中的参数。例如,下面的路由会将 {id} 参数作为参数传递给控制器方法:

Route::get('/user/{id}', 'UserController@show');

在控制器方法中,我们可以使用 $id 变量来获取该参数的值:

public function show($id)
{
    return "User ID: " . $id;
}

这将返回类似于 User ID: 1 的字符串。

从查询字符串中获取参数

在 Laravel 中,我们还可以从查询字符串中获取参数。查询字符串是 URL 中问号 ? 后面的部分,通常使用 request 对象来获取参数值。例如,如果我们的 URL 是 http://example.com/search?q=Laravel,那么我们可以这样获取 q 参数的值:

public function search(Request $request)
{
    $query = $request->input('q');
    return "Search query: " . $query;
}

这将返回类似于 Search query: Laravel 的字符串。

另外,查询字符串参数还可以使用 $request->query() 方法来获取所有参数的数组:

public function search(Request $request)
{
    $params = $request->query();
    return $params;
}

这将返回类似于 ['q' => 'Laravel'] 的数组。

总结

本文介绍了如何在 Laravel 应用程序中获取控制器中的 URL 参数值。我们可以从路由和查询字符串中获取参数,这些技巧在很多场景中都非常有用。希望本文能对你有所帮助!