有没有办法绕过必须在PHP中的函数内引用全局变量?

时间:2010-07-10 07:07:09

标签: php

有没有办法绕过必须在PHP中的函数内引用全局变量?

我只是讨厌为每个变量使用'global'关键字,而且我被告知在PHP中使用常量(作为替代)会严重影响性能。

4 个答案:

答案 0 :(得分:2)

如果您必须在函数内部使用许多全局变量,那么设计错误。

使用一些全局变量被认为是不好的做法,使代码变得不明显 尽管“表现不佳”的谣言是假的,但常数并不是解决方案

如果需要在函数内部使用许多变量,请考虑使用数组

$data   = array("one","two","three");
$result = myfunc($data);

简单,可靠和可读

通过更详细地解释这个函数的作用以及所有这些变量,你可以获得更精确的答案。

答案 1 :(得分:1)

您可以尝试使用$GLOBALS

答案 2 :(得分:0)

只需将变量发送到函数中即可:

function yourfunction ($variable1, $variable2) { 
    ... 

  }

 //Call the function:
 yourfunction ($variable1, $variable2);

答案 3 :(得分:0)

单身人士可能值得考虑。另请参阅注册表模式。

您还可以将全局分解为自己的功能

这是非常基本的...
function do_stuff() {
$var = get_something();
//do more stuff
}

function get_something() {
return 'something';
}

当然你也需要设置变量。用对象或其他东西来说这应该很容易。