更新時(shí)間:2022-06-10 來(lái)源:黑馬程序員 瀏覽量:
Laravel是泰勒·奧特威爾(Taylor Otwell)使用PHP語(yǔ)言開(kāi)發(fā)的一款開(kāi)源的Web應(yīng)用框架。于2011年6月首次發(fā)布,發(fā)布以來(lái)備受PHP開(kāi)發(fā)人員的喜愛(ài),用戶的增長(zhǎng)速度十分迅猛。Laravel是一套簡(jiǎn)潔、優(yōu)雅的框架,具有簡(jiǎn)潔且富于表達(dá)性的語(yǔ)法。Laravel秉承“Don't Repeat Yourself”(不要重復(fù)你自己)的理念,提倡代碼的重用。Laravel為開(kāi)發(fā)大型應(yīng)用提供了強(qiáng)大的功能,包括自動(dòng)驗(yàn)證、路由、Session、緩存、數(shù)據(jù)庫(kù)遷移等。
Laravel框架的特點(diǎn):
1.對(duì)外只提供一個(gè)入口,讓框架統(tǒng)一管理項(xiàng)目的所有的請(qǐng)求。
2.采用MVC設(shè)計(jì)模式,幫助團(tuán)隊(duì)更好地協(xié)同開(kāi)發(fā),為項(xiàng)目后期的維護(hù)提供方便。
3.支持Composer依賴管理工具,可以為項(xiàng)目自動(dòng)安裝依賴。
4.采用ORM方式操作數(shù)據(jù)庫(kù),支持AR模式。
5.注重代碼的模塊化和可擴(kuò)展性,開(kāi)發(fā)者可以通過(guò)Laravel組件庫(kù)Packalyst找到想要添加的組件。
6.自帶各種方便的服務(wù),提供開(kāi)箱即用的用戶身份驗(yàn)證功能和緩存系統(tǒng),可以快速開(kāi)發(fā)出相應(yīng)的功能。
7.具有路由功能,Laravel框架通過(guò)路由分發(fā)每一個(gè)請(qǐng)求,并可以對(duì)請(qǐng)求進(jìn)行分組。
8.提供Artisan命令行工具,幫助開(kāi)發(fā)人員將手動(dòng)的工作自動(dòng)化。
多學(xué)一招:MVC設(shè)計(jì)模式
MVC是Xerox PRAC(施樂(lè)帕克研究中心)在20世紀(jì)80年代為編程語(yǔ)言Smalltalk-80發(fā)明的一種軟件設(shè)計(jì)模式。到目前為止,MVC已經(jīng)成為一種被廣泛使用的軟件開(kāi)發(fā)模式。
MVC采用了人類分工協(xié)作的思維方法,將程序中的功能實(shí)現(xiàn)、數(shù)據(jù)處理和界面顯示相分離,從而在開(kāi)發(fā)復(fù)雜的應(yīng)用程序時(shí),開(kāi)發(fā)者可以專注于其中的某個(gè)方面,進(jìn)而提高開(kāi)發(fā)效率和項(xiàng)目質(zhì)量,便于代碼的維護(hù)。
MVC的作用:
模型(Model),負(fù)責(zé)數(shù)據(jù)操作,主要用來(lái)操作數(shù)據(jù)庫(kù)。通常情況下,一個(gè)模型對(duì)應(yīng)一張數(shù)據(jù)表。
視圖(View),負(fù)責(zé)渲染視圖,主要用于展示頁(yè)面。
控制器(Controller),負(fù)責(zé)所有業(yè)務(wù)的處理。通常情況下,一個(gè)控制器只處理一類業(yè)務(wù)。例如,用戶控制器實(shí)現(xiàn)用戶注冊(cè)登錄功能;訂單控制器實(shí)現(xiàn)訂單的生成等功能。