📜  在 Laravel 8 中创建基本路由 - PHP (1)

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

在 Laravel 8 中创建基本路由 - PHP

在 Laravel 8 中,创建基本路由非常简单。Laravel 8 为开发人员提供了一种简单和直观的方式来创建路由。

创建路由

要创建路由,首先打开 routes/web.php 文件。在这个文件中,您可以定义所有应用程序的路由。

您可以使用 Route::get() 方法来创建 GET 请求路由。例如,要创建一个基本的 /hello 端点,可以执行以下操作:

Route::get('/hello', function () {
    return 'Hello World';
});

上述路由定义将返回字符串 'Hello World'

如果您要创建 POST、PUT、DELETE 或任何其他类型的路由,则可以使用相应的方法,例如 Route::post()Route::put()Route::delete() 等。

路由参数

Laravel 8 也允许您定义带有参数的路由。例如,要定义一个接受单个参数的路由,可以执行以下操作:

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

在上面的示例中,{id} 是一个路由参数。Laravel 8 将使用传递到路由的实际值替换路由参数。在这种情况下,路由的响应将是类似于 "User ID: 1" 的字符串。

您还可以定义多个路由参数,例如:

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

上面的示例定义了两个路由参数:{id}{note}。Laravel 8 将路由参数中传递的实际值替换相应的参数,该示例的响应将类似于 "User ID: 1, Note ID: 2"

命名路由

Laravel 8 允许您为路由定义名称。命名路由对于生成 URL 和重定向非常有用。

要定义命名路由,请使用 Route::name() 方法:

Route::get('/users', function () {
    //
})->name('users.index');

在上面的示例中,我们为 /users 路由定义了一个名称 users.index

您可以使用命名路由在代码中生成 URL。例如,要生成一个指向 users.index 路由的 URL,可以使用以下代码:

$url = route('users.index');

上面的代码将返回 http://example.com/users

路由组

如果您有一组相关的路由,那么可以将这些路由放在一个路由组中。路由组允许您添加统一的前缀、中间件和命名空间。

要创建路由组,请使用 Route::group() 方法:

Route::group(['prefix' => 'admin', 'middleware' => 'auth'], function () {
    Route::get('dashboard', function () {
        // Dashboard
    });
    Route::get('users', function () {
        // Users
    });
    Route::get('settings', function () {
        // Settings
    });
});

在上面的示例中,我们将所有位于 /admin 前缀下的路由放在一个路由组中,并应用了 auth 中间件。这意味着用户必须已经通过身份验证才能访问这些路由。