Yii - 依赖注入
-
简述
DI(依赖注入)容器是一个知道如何实例化和配置对象的对象。Yii 通过 yii \di\Container 类提供 DI 容器。它支持以下类型的 DI -- Setter 和属性注入
- PHP 可调用注入
- 构造函数注入
- 控制器动作注入
DI 容器借助类型提示支持构造函数注入 -通过配置支持属性和设置器注入 -在 PHP 可调用注入的情况下,容器将使用已注册的 PHP 回调来构建类的新实例 -控制器动作注入是一种 DI,其中使用类型提示声明依赖项。它对于保持 MVC 控制器纤薄轻巧纤薄很有用 -您可以使用yii\db\Container::set()方法来注册依赖项 - -
使用 DI
第 1 步- 在components文件夹中创建一个名为MyInterface.php的文件,其中包含以下代码。第 2 步 - 在 components 文件夹中,创建两个文件。First.php -Second.php -第 3 步- 现在,将 actionTestInterface 添加到SiteController。第 4 步- 转到http://localhost:8080/index.php?r=site/test-interface您应该看到以下内容。这种方法很方便,因为我们可以在一个地方设置类,其他代码会自动使用新的类。