jmartin82 / dic-doc
依赖注入容器结果的魔法类型提示
dev-master
2016-04-15 23:38 UTC
Requires (Dev)
- phpunit/phpunit: 4.0.*
This package is not auto-updated.
Last update: 2024-09-20 18:54:12 UTC
README
依赖注入容器文档器
问题
自从我在项目中使用依赖注入容器以来,IDE不再理解我的代码中的一些地方。
这个问题会影响处理类时的代码提示、自动完成和重构工具。然后我的IDE就变得没有用了。
解决方案
您可以“手动”定义DIC返回的变量的类
/** @var YourClassType $mailer */
$mailer = $container['mailer'];
使用两个星号,在变量名之前写上数据类型。您可以在没有变量名的情况下写上数据类型(但不能在没有数据类型的情况下写上变量名)。
在大多数IDE中,这个注释解决了您的问题。但是...
懒惰的解决方案
如果您像我一样是个懒惰的人,您可以使用DIC。
要记录代码中的任何变量,您应该使用dd
函数将变量包围起来,执行代码,然后会发生黑魔法(好吧,不是太神奇,但它是有效的)!
之前
$mailer = dd($container['mailer']);
开始
/** @var YourClassType $mailer */
$mailer = $container['mailer'];
安装/使用
-
按照官方说明下载并安装Composer。
-
创建一个composer.json定义依赖关系。
{ "require-dev": { "jmartin82/DicDoc": "dev-master" } }
-
运行Composer:
php composer.phar install
重要
- 代码必须运行才能被替换
- 永远不要在生产代码中使用dd函数
- 始终审查更改
- 记住,如果IDE没有自动刷新文件,请手动刷新。