有没有办法避免不得不在PHP中的函数内引用全局变量?有没有办法避免在PHP中的函数内引用全局变量?
我只是讨厌对每个变量都使用'global'关键字,并且我被告知在PHP中使用常量(作为替代方法)会严重影响性能。
有没有办法避免不得不在PHP中的函数内引用全局变量?有没有办法避免在PHP中的函数内引用全局变量?
我只是讨厌对每个变量都使用'global'关键字,并且我被告知在PHP中使用常量(作为替代方法)会严重影响性能。
如果你必须使用你的函数,一些已经设计错误内的全局变量。
甚至使用一些全局变量被认为是不好的做法,使代码不明显。
和常量并不尽管“糟糕表现”谣言的虚假的解决方案
如果您需要使用许多变量的函数里面,考虑阵列使用
$data = array("one","two","three");
$result = myfunc($data);
简单,可靠和可读性
更详细地解释了这个函数做了什么以及所有这些变量用于什么,可以得到更精确的答案。
您可以尝试使用$GLOBALS
只是变量发送到函数,像这样:
function yourfunction ($variable1, $variable2) {
...
}
//Call the function:
yourfunction ($variable1, $variable2);
单身人士可能值得考虑。另请参阅注册表模式。
你也可以分解出全球到它自己的功能
这是非常非常基本的...
function do_stuff() {
$var = get_something();
//do more stuff
}
function get_something() {
return 'something';
}
当然你需要设置变量太多。对于某个物体或某物应该很容易。
那么所有的配置变量呢?它们不是存储在全局变量中吗?我不认为将配置变量放在全局变量中是错误设计的。 我相信我将不得不开始使用$ GLOBALS ['variable_name']方法。 – 2010-07-10 07:52:40
@Basil配置变量应该排在第一位!所以,输入单个'global $ cfg;'不会太伤你太多 – 2010-07-10 07:55:36
+1全局变差,m'kay? – 2010-07-10 08:06:33