1我知道从一开始就听起来很傻...
让我马上告诉你,这与PHP 中全局变量和函数参数之间的优势/劣势不是同一个问题。在 stackoverflow 上问。在那里,提问者想知道本地变量与全局变量。在这里,全局变量与全局变量。我的问题是关于 PHP 处理全局变量访问和速度的内部方式。
这是一个问题,在下面的示例中,function_1 是否应该比 function_2 运行得更快?
function function_1 ( &$global_variable_x) {
//do something with $global_variable_x
}
function function_2 () {
global $global_variable_x;
//do something with $global_variable_x
}
让我强调一下有什么区别......
在案例 1 中,您在函数参数中传递全局变量,不仅如此,您还通过 ref 传递它,因此内存位置直接传递给 PHP。由于这个技巧,不需要global
在函数中使用关键字,也正因为如此,PHP 没有时间在全局名称空间中查找全局。那么问题是为什么不这样做呢?它必须更快,不是吗?
当然,很容易误解这个问题并进入谈论的日常琐事
- 全局很差
- 全局变量不需要通过函数 args 传递,因为全局变量……是全局变量,因此无论如何都可以在任何地方访问它们。最后,从语义的角度来看,通过函数参数传递一个全局变量是没有意义的,它把人们搞糊涂了。
这些都没有解决所提出的问题。
一切都与速度有关。