您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關(guān)如何在Laravel框架中使用路由和控制器,小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。
路由
簡(jiǎn)介:
將用戶的請(qǐng)求轉(zhuǎn)發(fā)給相應(yīng)的程序進(jìn)行處理
作用:建立url和程序之間的映射
請(qǐng)求類型:get、post、put、patch、delete
目錄:app/http/routes.php
基本路由:接收單種請(qǐng)求類型
//get請(qǐng)求 Route::get('hello1',function(){ return 'hello world'; })
//post請(qǐng)求 Route::post('hello2',function(){ return 'hello world'; })
多請(qǐng)求路由:接收多種請(qǐng)求類型
//get、post請(qǐng)求 //match用來(lái)匹配指定請(qǐng)求的類型 Route::match(['get','post'],'mulity',function(){ return 'mulity request'; }) //any匹配所有類型的請(qǐng)求 Route::any('mulity2',function(){ return 'mulity2 request'; })
路由參數(shù)
Route::get('user/{id}', function ($id) { return 'User '.$id;}); Route::get(‘user/{name?}',function($name = null){ Return ‘name'.$name}); Route::get('user/{name}', function ($name) { //})->where('name', '[A-Za-z]+'); Route::get('user/{id}', function ($id) { //})->where('id', '[0-9]+'); Route::get('user/{id}/{name}', function ($id, $name) { //})->where(['id' => '[0-9]+', 'name' => '[a-z]+']);
路由別名
Route::get('user/profile', ['as' => 'profile', function () { //}]);
路由群組
//路由前綴 Route::group(['prefix' => 'admin'], function () { Route::get('users', function () { // Matches The "/admin/users" URL });});
路由輸出視圖
Route::get('/', function () { return view('welcome'); });
控制器
簡(jiǎn)介
將請(qǐng)求邏輯交由控制類處理,而不是都交給一個(gè)routes.php文件
控制器可以將相應(yīng)的php請(qǐng)求邏輯集合到一個(gè)類中
存放位置app/Http/Controllers
基礎(chǔ)控制器:在laravel中,默認(rèn)所有的控制器都繼承了控制器基類
<?php //使用命名空間 namespace App\Http\Controllers; use App\User; use App\Http\Controllers\Controller; class UserController extends Controller { /** * 顯示指定用戶的個(gè)人信息 * * @param int $id * @return Response */ public function showProfile($id) { return view('user.profile', ['user' => User::findOrFail($id)]); } }
route 訪問(wèn)控制器,利用 PHP 的命名空間機(jī)制以嵌套的方式組織控制器在 App\Http\Controllers 目錄下的結(jié)構(gòu)的話,引用類時(shí)只需指定相對(duì)于 App\Http\Controllers 根命名空間的類名即可
//@后面內(nèi)容為所要訪問(wèn)的方法 Route::get('foo', 'Photos\AdminController@method'); //也可以指定控制器路由的名稱 Route::get('foo', ['uses' => 'FooController@method', 'as' => 'name']); //通過(guò)助手方法來(lái)生成ur $url = route('name'); //傳參$id Route::get('user/{id}',['uses'=> 'MemberController@info'])->where('id', '[0-9]+');
以上就是如何在Laravel框架中使用路由和控制器,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見(jiàn)到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。