PHP未使用的导入会影响性能吗?

8
如果这个问题是重复的,请将我重定向,因为我没有找到针对PHP特别提出的相同问题。
我知道Java和Python中使用import语句的影响,但由于PHP的工作方式不同,如果我像这样保留未使用的import(use)语句,是否会有影响?
use DateTime;

我询问的原因是,我将要推出一个重构后的网站,除非这些内容对性能有很大影响,否则我宁愿留下它们,而不是冒着破坏现场的风险。


4
完全不是。use语句实际上并不会导入任何额外的代码,它仅仅是对同一文件中其他代码的别名。 - iainn
2
谢谢iainn!如果您愿意,您可以写一个答案。 - NaturalBornCamper
顺便提一下,如果您有兴趣以编程方式删除未使用的命名空间声明,请查看PHP Coding Standards Fixer(也称为php-cs-fixer)。 - Darragh Enright
1个回答

4

use语句仅仅是创建别名,以便在后续使用中代替完整的命名空间引用,并不是必须要使用use才能从另一个命名空间引用一个类 - 任何已经被声明过(例如通过自动加载)的类、接口等都可以使用完整路径进行引用。

这可以通过一个完全无效的use语句来轻易地证明:

use NotA\Valid\ClassName;

只有在尝试使用引用 ClassName 时,才会产生任何错误。相反:

$obj = new \Some\Valid\Class($param);

即使没有匹配的use语句(只要类存在于提供的路径中),这也可以正常工作。
文件开头一长串use语句可能会分散注意力,而能够使用别名可能会提高源代码的可读性,或者仅仅为了方便开发人员。如果有性能影响,那么它是如此微小,以至于不存在。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接