在 Laravel 中,路由是指定應用程序 URL 結構和處理 HTTP 請求的方法。要定義和使用 Laravel 路由,請按照以下步驟操作:
打開 routes
文件夾:在 Laravel 項目的根目錄中,找到名為 routes
的文件夾。這個文件夾包含了所有與路由相關的文件。
編輯 web.php
文件:在 routes
文件夾中,打開名為 web.php
的文件。這個文件主要用于定義 web 請求的路由。
定義路由:在 web.php
文件中,可以使用 Route
類的靜態方法來定義路由。例如,要定義一個處理 GET 請求的路由,可以使用 Route::get()
方法。以下是一個簡單的示例:
Route::get('/', function () {
return 'Hello, World!';
});
這個示例定義了一個路由,當用戶訪問應用程序的根 URL(例如 http://example.com/
)時,將返回 “Hello, World!” 字符串。
Route::get('/user/{id}', function ($id) {
return 'User ' . $id;
});
在這個示例中,{id}
是一個路由參數,它將捕獲 URL 中的數字部分。當用戶訪問類似 http://example.com/user/1
的 URL 時,將返回 “User 1” 字符串。
Route
類的靜態方法中添加 name()
方法。例如:Route::get('/user/{id}', function ($id) {
return 'User ' . $id;
})->name('user.profile');
現在,可以使用 route()
函數和路由名稱來生成 URL 或重定向。例如:
$url = route('user.profile', ['id' => 1]); // 生成 "http://example.com/user/1"
定義其他類型的路由:除了 get()
方法外,Route
類還提供了其他方法來處理不同類型的 HTTP 請求,如 post()
、put()
、delete()
等。只需將方法名稱更改為所需的方法即可。
集成控制器:雖然可以在 web.php
文件中直接定義路由處理程序,但建議使用控制器來組織代碼。要創建控制器,請運行以下 Artisan 命令:
php artisan make:controller UserController
這將在 app/Http/Controllers
文件夾中創建一個名為 UserController.php
的文件。然后,可以在控制器中定義方法來處理路由請求。例如:
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class UserController extends Controller
{
public function show($id)
{
return 'User ' . $id;
}
}
接下來,在 web.php
文件中,可以將路由處理程序替換為控制器方法:
Route::get('/user/{id}', 'UserController@show');
這就是在 Laravel 中定義和使用路由的基本方法。更多關于路由的信息,請查閱 Laravel 文檔:https://laravel.com/docs/routing