一文帶你了解laravel5?相信很多沒有經(jīng)驗(yàn)的人對(duì)此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個(gè)問題。
目錄結(jié)構(gòu)變化
laravel5最先強(qiáng)調(diào)的是項(xiàng)目目錄結(jié)構(gòu)的變化,與4.2區(qū)別還是蠻大的,逐條來說吧。
新的目錄結(jié)構(gòu)看上去像這樣:
app
Commands
Console
Events
Handlers
Commands
Events
Http
Controllers
Middleware
Requests
Kernel.php
routes.php
Providers
Services
bootstrap
config
database
migrations
seeds
public
package
resources
lang
views
storage
cache
logs
meta
sessions
views
work
tests
4.2的目錄結(jié)構(gòu):
app
commands
config
controllers
database
lang
models
start
storage
tests
views
bootstrap
public
對(duì)比一下,改變還是比較大的,可以看到 config,database被移動(dòng)到根目錄,lang,views目錄被移動(dòng)到resources目錄下,controllers被整合到http目錄里,models目錄不見了,還有一些新增的目錄就略了。
App命名空間
laravel5里還有一個(gè)變化,那就是app目錄默認(rèn)加上了一個(gè)根命名空間 App ,在 App 下的所有目錄、類都應(yīng)當(dāng)在該命名空間下,簡(jiǎn)而言之就是采用了psr4標(biāo)準(zhǔn)。
HTTP
laravel5認(rèn)為,新的目錄結(jié)構(gòu)是目前好的結(jié)構(gòu)之一,可以讓我們的開發(fā)更加得心應(yīng)手,比如http目錄:
Http
Controllers
Middleware
Requests
Kernel.php
routes.php
Middleware 很陌生,其實(shí)它是原來的路由filter的一個(gè)升級(jí)版,現(xiàn)在不用在filters.php里定義過濾器,取而代之的是在 Middleware 目錄中創(chuàng)建類,并在Kernel.php中配置全局還是可選,全局的Middleware在每個(gè)請(qǐng)求都會(huì)執(zhí)行,而可選的就相當(dāng)于原來的filter,可以在路由中使用,也可以在控制器中使用。
Requests是對(duì)核心類Request的擴(kuò)展,你可以擴(kuò)展不同的Requests類,添加不同的功能。
可以認(rèn)為,所有關(guān)于http請(qǐng)求有關(guān)的處理都在http目錄中,比如控制器就是用來接受一個(gè)請(qǐng)求并返回的,所以將它放在 Http 目錄里合情合理。
路由
路由跟以前的區(qū)別不大,但是需要注意的當(dāng)我們指定控制器命名空間時(shí),命名空間不是絕對(duì)路徑,而是相對(duì)于 App\Http\Controllers,舉例:
復(fù)制代碼 代碼如下:
網(wǎng)站題目:一文帶你了解laravel5-創(chuàng)新互聯(lián)
文章源于:http://chinadenli.net/article18/dggegp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、標(biāo)簽優(yōu)化、營(yíng)銷型網(wǎng)站建設(shè)、云服務(wù)器、Google、企業(yè)網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容