在 PHP 中保留未使用的 use 语句


leaving unused use statements in php

在symfony2中,当我使用控制台生成控制器时,symfony2使用use语句导入一些类,有时我不会在实际代码中使用,例如:

use Sensio'Bundle'FrameworkExtraBundle'Configuration'Route;
use Sensio'Bundle'FrameworkExtraBundle'Configuration'Template;
离开它们有什么

影响,我应该删除它们吗?

我只是不倾向于删除它们,以防我在后期需要它们。

在 PHP 中使用未使用的 use 语句不会影响性能。至少没有任何明显的措施。

但是,使用了您提到的两个语句。它们用于注释路由,例如:

<?php
use Sensio'Bundle'FrameworkExtraBundle'Configuration'Route;

class MyController
{
    /**
     * @Route("/some/route")
     */
    public function someAction()
    {
        // ...
    }
} 

因此,如果您在注释中使用它们,则需要它们。如果您不是,则可以安全地删除它们。

从技术上讲,您也可以在没有这些使用语句的情况下使用注释,但它看起来非常丑陋:

<?php
class MyController
{
    /**
     * @Sensio'Bundle'FrameworkExtraBundle'Configuration'Route("/some/route")
     */
    public function someAction()
    {
        // ...
    }
} 

如果您使用的是 PHPStorm

如果您使用的是 PHPStorm IDE,则可以安装 PHP 注释插件。如果您通过注释使用这两个语句,它将识别它们并将这两个语句标记为已使用