有没有一种方法可以避免在PHP函数中引用全局变量?
有没有一种方法可以避免在PHP函数中引用全局变量有没有一种方法可以避免在PHP函数中引用全局变量?,php,Php,有没有一种方法可以避免在PHP函数中引用全局变量 我只是讨厌对每个变量都使用'global'关键字,而且有人告诉我,在PHP中使用常量(作为替代)会严重影响性能。您可以尝试使用您可以尝试使用将变量发送到函数中,如下所示: function yourfunction ($variable1, $variable2) { ... } //Call the function: yourfunction ($variable1, $variable2); 只需将变量发送到函数中
我只是讨厌对每个变量都使用'global'关键字,而且有人告诉我,在PHP中使用常量(作为替代)会严重影响性能。您可以尝试使用您可以尝试使用将变量发送到函数中,如下所示:
function yourfunction ($variable1, $variable2) {
...
}
//Call the function:
yourfunction ($variable1, $variable2);
只需将变量发送到函数中,如下所示:
function yourfunction ($variable1, $variable2) {
...
}
//Call the function:
yourfunction ($variable1, $variable2);
如果必须在函数中使用多个全局变量,则说明设计错误。 甚至使用一些被认为是不好的做法的全局变量,使代码变得不明显。
尽管“表现不佳”的谣言是错误的,但常数并不是解决方案
如果需要在函数内部使用许多变量,请考虑数组使用
$data = array("one","two","three");
$result = myfunc($data);
简单、可靠、易读
通过更详细地解释此函数的作用以及所有这些变量的用途,您可以得到更精确的答案。如果您必须在函数中使用许多全局变量,则说明设计有误。 甚至使用一些被认为是不好的做法的全局变量,使代码变得不明显。
尽管“表现不佳”的谣言是错误的,但常数并不是解决方案
如果需要在函数内部使用许多变量,请考虑数组使用
$data = array("one","two","three");
$result = myfunc($data);
简单、可靠、易读
通过更详细地解释此函数的作用以及所有这些变量的用途,您可以得到更精确的答案。一个单例可能值得考虑。另请参见注册表模式 您还可以将全局变量分解为它自己的函数 这是非常基本的…
函数do_stuff(){
$var=get_something();
//多做事
}
函数get_something(){
返回“某物”;
}
当然,您也需要设置变量。对于一个对象或其他东西来说,这应该足够简单。一个单身汉可能值得考虑。另请参见注册表模式 您还可以将全局变量分解为它自己的函数 这是非常基本的…
函数do_stuff(){
$var=get_something();
//多做事
}
函数get_something(){
返回“某物”;
}
当然,您也需要设置变量。对于一个对象或其他东西,这应该足够简单。所有配置变量如何?它们不是存储在全局变量中吗?我不认为在全局变量中放置配置变量是错误的设计。我相信我必须开始使用$GLOBALS['variable_name']方法来代替。@Basil配置变量应该首先排列到数组中!因此,输入single
global$cfg代码>不会对您造成太大伤害所有配置变量是什么?它们不是存储在全局变量中吗?我不认为在全局变量中放置配置变量是错误的设计。我相信我必须开始使用$GLOBALS['variable_name']方法来代替。@Basil配置变量应该首先排列到数组中!因此,输入singleglobal$cfg代码>不会对你造成太大伤害