在PHP中使用初始化功能的区别

时间:2019-07-04 03:39:22

标签: laravel dependency-injection

我不理解如何在下面的代码中使用初始化函数。你能给我解释一下吗?

   Class A
   {
       protected $classB;
       public function __construct()
       {
           $this->classB = new ClassB();
       }
   }

   Class A
   {
       protected $classB;
       public function __construct(ClassB $classB)
       {
            $this->classB = $classB;
       }
   }

1 个答案:

答案 0 :(得分:0)

在第二种方法中,您始终必须使您的对象像这样。 $ clasa =新的ClassA($ classb); 第一种方法是在构造函数内部创建对象。 第二种方法是注射。例如当您需要一些已经在对象中设置的属性时,它可能会很有用。