本文面向php語言的laravel框架的用戶,介紹一些laravel框架里面容器管理方面的使用要點(diǎn)。文章很長(zhǎng),但是內(nèi)容應(yīng)該很有用,希望有需要的朋友能看到。php經(jīng)驗(yàn)有限,不到位的地方,歡迎幫忙指正。
1. laravel容器基本認(rèn)識(shí)
laravel框架是有一個(gè)容器框架,框架應(yīng)用程序的實(shí)例就是一個(gè)超大的容器,這個(gè)實(shí)例在bootstrap/app.php內(nèi)進(jìn)行初始化:
這個(gè)文件在每一次請(qǐng)求到達(dá)laravel框架都會(huì)執(zhí)行,所創(chuàng)建的$app即是laravel框架的應(yīng)用程序?qū)嵗?,它在整個(gè)請(qǐng)求生命周期都是唯一的。laravel提供了很多服務(wù),包括認(rèn)證,數(shù)據(jù)庫(kù),緩存,消息隊(duì)列等等,$app作為一個(gè)容器管理工具,負(fù)責(zé)幾乎所有服務(wù)組件的實(shí)例化以及實(shí)例的生命周期管理。這種方式能夠很好地對(duì)代碼進(jìn)行解耦,使得應(yīng)用程序的業(yè)務(wù)代碼不必操心服務(wù)組件的對(duì)象從何而來,當(dāng)需要一個(gè)服務(wù)類來完成某個(gè)功能的時(shí)候,僅需要通過容器解析出該類型的一個(gè)實(shí)例即可。從最終的使用方式來看,laravel容器對(duì)服務(wù)實(shí)例的管理主要包括以下幾個(gè)方面:
服務(wù)的綁定與解析
服務(wù)提供者的管理
別名的作用
依賴注入
延伸閱讀
- ssh框架 2016-09-30
- 阿里移動(dòng)安全 [無線安全]玩轉(zhuǎn)無線電——不安全的藍(lán)牙鎖 2017-07-26
- 消息隊(duì)列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標(biāo)分割】 2017-07-26
- 詞向量-LRWE模型-更好地識(shí)別反義詞同義詞 2017-07-26
- 從棧不平衡問題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實(shí)現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動(dòng)安全 Android端惡意鎖屏勒索應(yīng)用分析 2017-07-26
- 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來看看(二) 2017-07-26