本文實(shí)例講述了Laravel 框架路由原理與路由訪問(wèn)。分享給大家供大家參考,具體如下:
一、簡(jiǎn)單了解路由的概念
在網(wǎng)絡(luò)成為吃住一樣的基本需求的今天;
斷開(kāi)了網(wǎng)絡(luò)就像斷開(kāi)了與世界的聯(lián)系的感覺(jué);
對(duì)于現(xiàn)實(shí)中的路由我們應(yīng)該是不陌生的;
最起碼了解 wifi 吧;
你家里只有一根網(wǎng)線;
網(wǎng)線上接著 wifi 路由器;
多部手機(jī)和電腦就可以通過(guò) wifi 上網(wǎng)了;
路由器起到了一個(gè)分發(fā)的作用;
二、Laravel 中的路由

我們?cè)L問(wèn)項(xiàng)目的時(shí)候;
請(qǐng)求首先到達(dá) public/index.php 入口文件;
可以把 index.php 類(lèi)比成網(wǎng)線;
route/web.php 類(lèi)比成路由器設(shè)備;
controller 控制器類(lèi)比成多部手機(jī)設(shè)備;
有些框架的路由是自動(dòng)綁定控制器的;
創(chuàng)建了控制器;路由也就自動(dòng)有了;
laravel 的每一個(gè)路由是需要手動(dòng)定義的;
很多童鞋會(huì)覺(jué)得這樣很繁瑣;
當(dāng)年我也覺(jué)得麻煩;
還專(zhuān)門(mén)研究了自動(dòng)綁定控制器的方法;
不過(guò)我并不會(huì)把方案寫(xiě)出來(lái)誤導(dǎo)大家;
因?yàn)槭謩?dòng)定義這種解耦的方式有它的好處;
以后重構(gòu)項(xiàng)目路由的時(shí)候就簡(jiǎn)單方便多了;
定義一條路由也就秒秒鐘的事;
不必糾結(jié);
打開(kāi) web.php ;
我們可以看到這樣的代碼;

我們來(lái)解析下;
Route 是一個(gè)類(lèi);
訪問(wèn)類(lèi)的靜態(tài)方法是用 ::的形式;
那么get 就是Route類(lèi)的一個(gè)靜態(tài)方法;
get 靜態(tài)方法可以傳2個(gè)參數(shù);
第一個(gè)參數(shù)現(xiàn)在是 / ;
我們知道 function 是用來(lái)定義函數(shù)的;
第二個(gè)參數(shù)就是一個(gè)閉包函數(shù);
在這個(gè)閉包函數(shù)中 return 返回的東西就是我們請(qǐng)求到的內(nèi)容;
這3行代碼告訴我們3件事;
第一;
Route::后面可以跟一個(gè)請(qǐng)求方法;
當(dāng)前代碼中就是 get 請(qǐng)求;
get 和 post 在請(qǐng)求中是最基本最常用的方法;
很容易就 Lenovo 到;
如果寫(xiě)成 post 的話(huà);
那就表示是接受一個(gè) post 的請(qǐng)求;
第二:
/表示的是首頁(yè);
在 url 中就是域名后面的那個(gè)斜杠;
http://bjyblog.test/
只不過(guò)后面如果沒(méi)有其他內(nèi)容的話(huà)一般是被省略了;
于是我們就很容易的模仿一下;

這樣的寫(xiě)的話(huà);
那 url 就應(yīng)該是
http://127.0.0.1:8000/article ;
第三;
view 函數(shù)可以直接定位到 resources/views 目錄;
它可以接受一個(gè)參數(shù);
這個(gè)參數(shù)就是 resources/views 目錄下的文件名去掉 blade.php后綴;
我們可以創(chuàng)建一個(gè) resources/views/article.blade.php 文件;
里面寫(xiě)上 bjyblog article;
這樣我們就可以定義請(qǐng)求了;


訪問(wèn) http://127.0.0.1:8000/article
到這;
我們已經(jīng)把路由和視圖V關(guān)聯(lián)起來(lái)了;
我們也創(chuàng)建了一個(gè)非常簡(jiǎn)單的路由了;
更多關(guān)于Laravel相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《Laravel框架入門(mén)與進(jìn)階教程》、《php優(yōu)秀開(kāi)發(fā)框架總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門(mén)教程》、《php+mysql數(shù)據(jù)庫(kù)操作入門(mén)教程》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家基于Laravel框架的PHP程序設(shè)計(jì)有所幫助。
您可能感興趣的文章:- Laravel源碼解析之路由的使用和示例詳解
- 通過(guò)源碼解析Laravel的依賴(lài)注入
- 源碼分析 Laravel 重復(fù)執(zhí)行同一個(gè)隊(duì)列任務(wù)的原因
- Laravel 框架控制器 Controller原理與用法實(shí)例分析
- 4種Windows系統(tǒng)下Laravel框架的開(kāi)發(fā)環(huán)境安裝及部署方法詳解
- Laravel框架數(shù)據(jù)庫(kù)遷移操作實(shí)例詳解
- Laravel框架下的Contracts契約詳解
- laravel框架路由分組,中間件,命名空間,子域名,路由前綴實(shí)例分析
- laravel框架使用FormRequest進(jìn)行表單驗(yàn)證,驗(yàn)證異常返回JSON操作示例
- Laravel框架源碼解析之反射的使用詳解