有没有办法绕过必须在PHP中的函数内引用全局变量?
我只是讨厌为每个变量使用'global'关键字,而且我被告知在PHP中使用常量(作为替代)会严重影响性能。
答案 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';
}
当然你也需要设置变量。用对象或其他东西来说这应该很容易。