thinkphp6 0之了解容器和依賴注入

2021-10-04 12:45:59 字數 1384 閱讀 8048

1、在model裡建立乙個類繼承model

namespace

;use

think\model

;class

oneextends

model

2、建立乙個控制器inject,通過依賴注入將模型one物件引入其內

namespace

;use

;class

inject

public

function

index()

}

3、 依賴注入:即允許通過類的方法傳遞物件的能力,並且限制了物件的型別(約束);

4、而傳遞的物件背後的那個類被自動繫結並且例項化了,這就是依賴注入

class

inject

}

//每次呼叫總是會重新例項化 

$one=(

'one',[

],true);

return

$one

->

name

;

bind

('one',)

;$one=(

'one',[

['file']]

,true);

return

$one

->

username

;

return()

->

username

;

8、使用 bind()可以實現批量繫結,只不過系統有專門提供批量繫結的檔案;

bind([

'one'

=>

,'user'

=>])

;return

('one')-

>

username

;bind([

'one'=:

:class

,'user'=:

:class])

;return

('user')-

>

username

;

9、::class 模式,不需要單引號,而且需要在最前面加上\,之前的加不加都行

10、系統提供了 provider.php 檔案,用於批量繫結類到容器中,這裡不加不報錯

return

['one'=:

:class

,//這裡加不加\都正常

'user'=:

:class

];

ThinkPHP6 0 學習 安裝

1 linux環境 curl ss php 將檔案移動到bin下 mv composer.phar usr local bin composer 2 使用國內映象 阿里雲 開啟命令列視窗 windows使用者 或控制台 linux mac 使用者 並執行如下命令 composer config g ...

thinkphp6 0學習筆記之啟程2

控制器,即 controller,控制器檔案存放在 controller 目錄下 如果想改變系統預設的控制器檔案目錄,可以在 config 下 route.php 配置 controller layer controllerxyz er後面自由新增類名和檔名大小寫保持一致,並採用駝峰式 首字母大寫 ...

ThinkPHP6 0多應用路由規則

index 主應用 controller 控制器目錄 model 模型目錄 view 檢視目錄 config 配置目錄 route 路由目錄 更多類庫目錄 admin 後台應用 controller 控制器目錄 index.php 控制器類 model 模型目錄 view 檢視目錄 config 配...