从 symfony 3.4 捆绑包 AppBundle 中的一个简单实体类开始,php-cs-fixer 似乎去除了文档字符串使用的导入,但仅在引用 AppBundle/ 时 - vendor/ 中的命名空间似乎是安全的
从以下简单的实体类开始
<?php
namespace AppBundle\Entity;
use Doctrine\ORM\EntityManager;
use AppBundle\Entity\AclObjectIdentities; // will be removed
use AppBundle\Entity\AclSecurityIdentities; // will be removed
class AclEntries
{
/** @var AclObjectIdentities Object identity */
private $objectIdentity;
/** @var EntityManager Doctrine entity manager */
private $em;
}
我使用一些合理的默认值运行 php-cs-fixer 命令
php-cs-fixer fix src/AppBundle/Entity/AclEntriesDEBUG.php --rules=@PSR2,@Symfony
该文件得到了很好的清理,但是所有到 AppBundle 的 phpdoc 导入都被删除为未使用
<?php
namespace AppBundle\Entity;
use Doctrine\ORM\EntityManager;
class AclEntries
{
/** @var AclObjectIdentities Object identity */
private $objectIdentity;
/** @var EntityManager Doctrine entity manager */
private $em;
}
对我来说,预期的行为应该是“所有导入都是平等的”并且“使用 AppBundle ...”不会被剥夺。