【发布时间】:2019-10-13 04:52:38
【问题描述】:
在 PHP 中使用命名空间时,您可以选择如何引用它们。您可以将它们放在班级的首位
use Symfony\Component\HttpFoundation\JsonResponse;
或者你可以在调用类时包含它们:
return Symfony\Component\HttpFoundation\JsonResponse::create($data);
我的问题是,是否有任何性能考虑会偏爱一种方法而不是另一种?
我可以想象,在没有任何实际知识的情况下,在一个类中声明 use 可能是一种预加载类定义,它永远不会在实际代码执行中使用,具体取决于数据- - 这将通过仅在您实际调用命名空间类时引用它来解决。或者,如果您在开发过程中进行了声明,但最终没有调用该类,但在结束时不考虑删除它,您的代码将始终加载该类定义,并且永远不会使用它。
继续在运行时使用我对 PHP 的零星知识,在类定义中声明命名空间可能会被编译,使其在实际调用该类时运行得更快,而不必进行某种“动态”查找调用类时。
或者useing 命名空间位于类声明的顶部,只是为了方便开发人员,以避免大量重复输入?
我发现了这个问题,Are namespaces bad for performance?,但它只是询问在代码中的任何位置使用命名空间是否会对性能产生负面影响。它也是 7 岁;信息可能已过时。
【问题讨论】:
标签: php performance namespaces