1我知道这可能听起来很傻......
让我告诉你,这与The advantage / disadvantage between global variables and function parameters in PHP. asked right here on 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
}
让我强调一下有什么不同......
在第一种情况下,你在函数参数中传递全局,不仅如此,你通过ref传递它,所以内存位置直接传递给PHP。由于这个技巧,不需要在函数中使用global
关键字,并且由于这个事实,PHP没有花时间在全局名称空间中查找全局。那么问题是为什么不这样做呢?它必须更快,不是吗?
当然,很容易误解这个问题并进入常见的谈论琐事
没有一个解决被问到的问题。
一切都与速度有关。
答案 0 :(得分:0)
如果它的全局性,将它用作可以看到全局的函数的参数是没有意义的。它要么1)不会更快,要么2)它的运行速度会慢得多3)它的运行速度会很快,而且其原因会违反形式逻辑。