Rumah > Artikel > rangka kerja php > Pengenalan terperinci kepada definisi dan penggunaan penghalaan Laravel
Laravel ialah rangka kerja yang sangat baik untuk PHP dan menjadi semakin popular dalam pembangunan web hari ini. Laravel menyediakan banyak ciri mudah, salah satu ciri penting ialah penghalaan. Jadi, di manakah laluan Laravel ditakrifkan? Artikel ini akan memperkenalkan definisi dan penggunaan penghalaan Laravel secara terperinci.
Laluan dalam Laravel boleh ditakrifkan dalam tiga cara: laluan yang ditentukan secara manual, laluan automatik dan laluan RESTful. Kami akan memperkenalkan ketiga-tiga kaedah ini secara berasingan.
Menentukan laluan secara manual ialah cara yang digunakan secara meluas, yang membolehkan kami mentakrifkan URI dengan URL tertentu. Laravel melaksanakan ini melalui kaedah dalam kelas Route
. Kelas Route
ialah kelas pembantu global yang mengandungi banyak kaedah berkaitan penghalaan. Di sini kami melaksanakan contoh mengembalikan "Hello world" dengan menentukan laluan secara manual.
Route::get('/hello', function () { return 'Hello World'; });
Apabila mengakses http://your-app.com/hello
, mesej "Hello World" akan dipaparkan.
Dalam contoh di atas, kami menggunakan kaedah HTTP GET untuk mendapatkan URI /hello
dan mengembalikan rentetan ringkas "Hello World". Sebagai tambahan kepada kaedah GET, terdapat beberapa kaedah HTTP lain, seperti POST, PUT, DELETE, dan lain-lain, yang boleh digunakan mengikut keperluan.
Dalam Laravel, anda boleh menjana laluan secara automatik dengan menggunakan kaedah Route::controller
. Kaedah ini akan menggunakan kaedah dalam pengawal sebagai URI untuk bertindak balas kepada permintaan akses.
Route::controller('/user', 'UserController');
Kod di atas mentakrifkan URI /user
dan menggunakan kaedah dalam pengawal UserController
untuk mengendalikan permintaan akses. Dalam pengawal, kita boleh menentukan satu siri fungsi yang menerima URI, dan fungsi ini akan dihalakan dan didaftarkan secara automatik.
Sebagai contoh, pengawal boleh ditakrifkan sebagai:
class UserController extends Controller { public function getIndex() { // 返回用户首页 } public function postUser() { // 处理用户提交的表单数据 } }
Dengan definisi di atas, apabila /user
URI diakses, kaedah UserController
getIndex
akan menjadi dipanggil; Apabila menggunakan kaedah POST untuk mengakses /user/user
, kaedah UserController
postUser
akan dipanggil.
Penghalaan RESTful ialah kaedah penghalaan yang beroperasi pada sumber. Dalam Laravel, kita boleh menggunakan kaedah Route::resource
untuk mendaftarkan semua laluan RESTful secara automatik. Kaedah ini ialah cara yang sangat mudah dan biasa digunakan untuk memusatkan semua operasi RESTful dalam pengawal.
Route::resource('/user', 'UserController');
Kod di atas akan mendaftarkan URI bernama /user
dan mendaftarkan nama UserController
, index
, create
, store
, show >, edit
dan update
kaedah. destroy
Route::get('/user/{id}', function ($id) { return 'User ' . $id; });Dalam contoh di atas, kami menentukan parameter laluan bernama
. Apabila mengakses id
, "Pengguna 1" akan dicetak; apabila mengakses /user/1
, "Pengguna 2" akan dicetak. /user/2
Route::get('/user/{id}', 'UserController@show'); class UserController extends Controller { public function show($id) { return view('user.show', ['user' => User::findOrFail($id)]); } }Dalam contoh di atas, kami mentakrifkan parameter laluan yang dipanggil
dan menggunakannya untuk membuat pertanyaan dalam kaedah id
pengawal Maklumat pengguna dalam pangkalan data. Dengan menggunakan kaedah show
, adalah sangat mudah untuk mengendalikan situasi di mana pengguna tidak wujud. Pada masa yang sama, kami juga boleh menghantar maklumat pengguna yang ditanya kepada paparan untuk paparan dan penggunaan. findOrFail()
Atas ialah kandungan terperinci Pengenalan terperinci kepada definisi dan penggunaan penghalaan Laravel. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!