如果在将来的PHP版本中弃用或删除global关键字,我会感兴趣。
我正在处理一些使用类似这样的遗留应用程序:
function foo($x)
{
global $y;
}
经常。我想知道我是否应该以不同的方式重写这些行,还是应该在下一个PHP版本中继续使用?
答案 0 :(得分:6)
如果在将来的PHP版本中弃用或删除global关键字,我会感兴趣。
虽然我们都不能确定未来,但最近关于该主题的讨论(2010年12月)给出了响亮的回答,“不,谢谢!”
自己阅读(61条消息):http://markmail.org/thread/y5aeyej7i72y4em4
答案 1 :(得分:4)
我非常怀疑global
关键字是否会从PHP中删除,因为它需要对许多应用程序进行大量重写,并且PHP在向后兼容性方面一直很重要。
此外,与魔术引语等真实的kludges不同,global
即使不鼓励也是一种有效的语言结构。
据我所知,没有具体的计划,甚至没有认真的讨论。
也就是说,不使用它通常是一件好事,而是使用函数参数或类属性。
答案 2 :(得分:3)
我认为,它将在未来版本中使用(作为后向兼容性)。 但我建议你重写这些函数,因为全局变量是邪恶的:)
答案 3 :(得分:1)
同意。现在突然下降的可能性很小。您仍然应该重写自己的代码以避免全局。