使用 PHP-DI 依赖注入自动加载类
程序员文章站
2024-01-25 08:37:47
...
使用过 laravel 的同学应该对依赖注入,自动加载这些特性相当的了解,比如你自定义的类,传入 Interface 来实例化类对象,只需要在 AppServiceProvider 中添加即可,那么,在 laravel 之外,你可以使用 PHP-DI来完成这些工作。
依赖注入
依赖注入是个比较简单的概念,看下面这个例子体会.
user = $user; }}
那么, UserController就依赖于 User 这个类,可能你需要这来实例化
new UserController(new User)
在 laravel 中,你的代码是这样的(joking)
new UserController
容器
首先,使用 PHP-DI的容器来管理我们的类。这里有一个简单的例子, PHP-ID-example,这里还有一个简单的实现 http://rrylee.github.io/2015/09/23/laravel-container/#section-3
Use in Project
理解了依赖注入,容器等一些概念之后,就可以在项目中去使用了,官方给出了 Symfony2, Slim3等框架的详细的教程。可以自行参考。
配合 Slim 自身的 Container 使用起来真的很棒。
补充
在 laravel 里面,你可以看到这种写法 User::class,这是 php5.5 开始提供的一个魔术关键字,用于获取类的全名(返回字符串),例子
上一篇: PHP 的编译配置详细选项_PHP
下一篇: 机器学习KNN算法分类kaggle猫狗
推荐阅读
-
phalcon - Dependency Injection依赖注入 和 自动加载 各自的优缺点
-
使用 PHP-DI 依赖注入自动加载类
-
phalcon - Dependency Injection依赖注入 和 自动加载 各自的优缺点
-
php中使用__autoload()自动加载未定义类的实现代码_PHP教程
-
php中使用__autoload()自动加载未定义类的实现代码
-
PHP 进阶篇:面向对象的设计原则,自动加载类,类型提示,traits,命名空间,spl的使用,反射的使用,php常用设计模式 (麦子学员 第三阶段)
-
PHP使用__autoload函数自动加载未定义的类
-
php中使用__autoload()自动加载未定义类的实现代码_PHP
-
php中使用__autoload()自动加载未定义类的实现代码
-
php中使用__autoload()自动加载未定义类的实现代码