欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

ThinkPHP容器中綁定參數(shù)的示例分析-創(chuàng)新互聯(lián)

這篇文章主要介紹了ThinkPHP容器中綁定參數(shù)的示例分析,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

十年的景德鎮(zhèn)網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。營(yíng)銷型網(wǎng)站的優(yōu)勢(shì)是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整景德鎮(zhèn)建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)公司從事“景德鎮(zhèn)網(wǎng)站設(shè)計(jì)”,“景德鎮(zhèn)網(wǎng)站推廣”以來,每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。
解析bindParams方法

接下來就解析一下bindParams這個(gè)方法。

關(guān)于參數(shù)傳遞的就是一個(gè)反射類   第二個(gè)參數(shù)暫時(shí)不做說明,目前還沒有遇到響應(yīng)的場(chǎng)景。

第一個(gè)參數(shù)值$reflect

ThinkPHP容器中綁定參數(shù)的示例分析

ThinkPHP容器中綁定參數(shù)的示例分析使用反射方法$reflect->getNumberOfParameters()獲取反射類中對(duì)應(yīng)的方法中的參數(shù)數(shù)目。按照上文的就是__make方法。容器代碼中只獲取過倆個(gè)方法的參數(shù)數(shù)目,一個(gè)是__make方法,一個(gè)是就是反射類中的構(gòu)造函數(shù)。

由于目前還沒有傳遞vars變量的場(chǎng)景,所以這塊的內(nèi)容暫時(shí)不去研究它直接略過。

代碼$params = $reflect->getParameters();也是使用反射獲取方法的參數(shù)。

打印出來可以看到的結(jié)果是倆組數(shù)據(jù)。

ThinkPHP容器中綁定參數(shù)的示例分析那么這這組數(shù)據(jù)是從哪里來的呢!往上翻一下,看一下$reflect這個(gè)參數(shù)是什么就明白了。

think\App這個(gè)反射類是沒有__make方法的,所以會(huì)獲取構(gòu)造函數(shù)中的參數(shù)。

ThinkPHP容器中綁定參數(shù)的示例分析然后think\Log反射類中存在__make方法,于是就會(huì)返回__make的參數(shù),如下圖。

ThinkPHP容器中綁定參數(shù)的示例分析

就像類似于think\Log這樣的類,既有__make方法,也存在構(gòu)造函數(shù),就會(huì)走倆次bindParams方法,這個(gè)應(yīng)該都明白,正是下圖邏輯。

ThinkPHP容器中綁定參數(shù)的示例分析在接下來就是循環(huán)反射類中獲取的參數(shù)。

獲取參數(shù)名、和獲取對(duì)應(yīng)的反射類

最后將獲取出來的反射類傳遞給getObjectParam方法。

ThinkPHP容器中綁定參數(shù)的示例分析在這個(gè)getObjectParam方法中并沒有多少內(nèi)容。

由于$vars從頭到尾都是空數(shù)組所以去除數(shù)組第一個(gè)的操作和判斷是否為閉包都不會(huì)執(zhí)行。

最終會(huì)在返回去執(zhí)行make方法

ThinkPHP容器中綁定參數(shù)的示例分析然后make方法會(huì)直接從容器中返回這個(gè)實(shí)例

ThinkPHP容器中綁定參數(shù)的示例分析當(dāng)一個(gè)反射類存在__make方法時(shí),最終就會(huì)執(zhí)行return $method->invokeArgs(null, $args);,帶參數(shù)執(zhí)行反射類方法

ThinkPHP容器中綁定參數(shù)的示例分析使用容器來調(diào)用配置類

既然已經(jīng)把容器源碼讀了一次了,可不可以使用容器來實(shí)現(xiàn)呢!

那當(dāng)然是可以的了,這里需要注意一下咔咔的命名空間,這里由于為了以后回顧方便把類名也起成了Container了,所以給加了一個(gè)別名,你們?cè)谑褂玫臅r(shí)候是不需要的哈!

ThinkPHP容器中綁定參數(shù)的示例分析

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“ThinkPHP容器中綁定參數(shù)的示例分析”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,,關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來學(xué)習(xí)!

網(wǎng)頁(yè)題目:ThinkPHP容器中綁定參數(shù)的示例分析-創(chuàng)新互聯(lián)
本文URL:http://www.chinadenli.net/article14/dspide.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁(yè)設(shè)計(jì)公司Google定制開發(fā)靜態(tài)網(wǎng)站網(wǎng)站導(dǎo)航域名注冊(cè)

廣告

聲明:本網(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)

成都定制網(wǎng)站網(wǎng)頁(yè)設(shè)計(jì)