1
class Test {
function test()
{
return 'test';
}
}
abstract class MasterAbstract {
public function __construct (Test $test)
{
$this->test = test;
}
protected function runMaster()
{
return $this->test->test();
}
}
class Child extends MasterAbstract
{
public function run()
{
return 1212;
}
}
案例1:依賴注入
$c = new Child();
echo $c->run;
收到錯誤在這裏傳遞給MasterAbstract :: __結構(
參數1)必須是實例測試 ,沒有給出
案例2:在這我沒有創造任何對象ld或其他控制器。它正在工作。我正在使用laravel框架
class SomeotherController
{
private $ch;
public function __constructor(Child $ch)
{
$this->ch = $ch;
}
public function run()
{
return $this->ch->run();
}
}
請任何人解釋這兩種情況如何工作?
謝謝@菲利普Koblański – vijaykumar
如果這有幫助 - 你可以標記和接受答案:) –