📜  laravel 路由 - PHP (1)

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

Laravel 路由

Laravel 是一种流行的 MVC 框架,可以轻松地创建 Web 应用程序。在 Laravel 中,路由是定义应用程序 URL 的一种方式。本文将介绍 Laravel 中的路由,并向您展示如何使用它们来构建自己的应用程序。

定义路由

要定义路由,可以使用 Route 类的 get 方法,如下所示:

Route::get('/', function () {
    return 'Welcome to my website!';
});

上面的代码定义了一个路由,当用户访问网站的根 URL 时,将返回 Welcome to my website!

参数化路由

可以使用参数化路由来传递参数到路由处理程序中。例如,以下代码定义了一个将用户 ID 作为参数的路由:

Route::get('/user/{id}', function ($id) {
    return 'User '.$id;
});

现在,当用户访问 /user/123 时,将返回 User 123

命名路由

命名路由允许您为路由指定名称,并在应用程序中使用该名称来生成 URL。以下是一个示例:

Route::get('/user/{id}', function ($id) {
    return 'User '.$id;
})->name('user.profile');

现在,您可以使用以下代码生成指向该路由的 URL:

$url = route('user.profile', ['id' => 123]);
RESTful 资源控制器

Laravel 还提供了一种简化处理常见资源控制器操作的方法。可以使用 Route::resource 方法来注册 RESTful 资源控制器:

Route::resource('photos', 'PhotoController');

上述代码将注册以下路由:

+-----------+------------------------+-----------------------+--------------+------------------------+
| Method    | URI                    | Name                  | Action       | Middleware             |
+-----------+------------------------+-----------------------+--------------+------------------------+
| GET       | /photos                | photos.index          | index        | web                    |
| GET       | /photos/create         | photos.create         | create       | web                    |
| POST      | /photos                | photos.store          | store        | web                    |
| GET       | /photos/{photo}        | photos.show           | show         | web                    |
| GET       | /photos/{photo}/edit   | photos.edit           | edit         | web                    |
| PUT/PATCH | /photos/{photo}        | photos.update         | update       | web                    |
| DELETE    | /photos/{photo}        | photos.destroy        | destroy      | web                    |
+-----------+------------------------+-----------------------+--------------+------------------------+
结论

Laravel 的路由功能让构建 Web 应用程序变得容易。无论是传递参数、命名路由还是使用 RESTful 资源控制器,使用 Laravel 可以轻松地定义和管理您的应用程序 URL。