在使用\
命名空间触发器而没有使用echo MYCONSTANT
命名空间触发器的情况下访问在命名空间外定义的命名空间内的常量是否存在性能损失?
即。 echo \MYCONSTANT
慢于{{1}} 吗?
答案 0 :(得分:3)
愚蠢的微观刺激是愚蠢的。如果你想优化任何东西,那么使用frigging profiler并查看一个闪亮的图表,为整个应用程序提供相关的结果。当SQL查询和循环使应用程序变慢时,优化最微小的部分毫无意义。
我只是给你一个列表,因为它把命名空间代码置于不利的地方。还有,非常不科学。不能打扰100次测试。
PHP 5.3 PHP 5.4
CONSTI in global scope 1.69s 2.02s
\CONSTI in global scope 1.87s 2.20s
CONSTI in namespace 2.01s 2.25s
\CONSTI in namespace 1.87s (varying) 2.13s (for 1M runs)
仅使用PHP 5.3运行。而叔叔的差异可能来自解析器/标记器。不是事实上的运行时性能差异。
答案 1 :(得分:0)
不在PHP世界中。
不要将表演问题视为黑暗中的随机拍摄 如果没有事先分析,请不要问性能问题。