tp5依賴註入(自動實例化):解決了像類中的方法傳對象的問題
阿新 • • 發佈:2018-12-31
val 統一 temp 觸發 urn 一個 turn esp index
app\index\Demo1.php
namespace app\index\controller; /* 容器與依賴註入的原理 ----------------------------- 1.任何的url訪問,最終都是定位到控制器,由控制器中某換個具體方法去執行 2.一個控制器對應著一個類,如果這些類需要進行統一管理,怎麽辦? 容器(原生註冊樹)來進行類管理,還可以講類的實例(對象)作為參數,傳遞給類方法,自動觸發依賴註入 依賴註入:講對象類型的數據,以參數的方式穿傳到方法的參數列表中 url訪問:通過GET方式將數據傳到控制器指定的方法中,但是只能傳字符串,數值。。。 */ class Demo1{ // 可以通過字符串,數值用GET方式來傳值到類方法中 public function getName($name = 'Peter') { return 'Hello'.$name; } // \app\common\Temp $temp:將會出發依賴註入 public function getMethod(\app\common\Temp $temp) { // \app\common\Temp $temp 等價於 // $temp = new \app\common\Temp; $temp-> setName('value'); return $temp->getName(); } }
app\common\Temp.php
namespace app\common; class Temp { private $name; public function __construct($name = 'Peter') { $this->name = $name; } public function setName($name) { $this->name = $name; } public function getName() { // __METHO__返回類的方法名 return '方法是:'.__METHO__.'屬性是:'.$this->name; } }
tp5依賴註入(自動實例化):解決了像類中的方法傳對象的問題