将来的PHP版本中是否会弃用/删除global关键字?

时间:2011-02-04 12:31:39

标签: php

如果在将来的PHP版本中弃用或删除global关键字,我会感兴趣。

我正在处理一些使用类似这样的遗留应用程序:

function foo($x)
{
    global $y;
}

经常。我想知道我是否应该以不同的方式重写这些行,还是应该在下一个PHP版本中继续使用?

4 个答案:

答案 0 :(得分:6)

  

如果在将来的PHP版本中弃用或删除global关键字,我会感兴趣。

虽然我们都不能确定未来,但最近关于该主题的讨论(2010年12月)给出了响亮的回答,“不,谢谢!

自己阅读(61条消息):http://markmail.org/thread/y5aeyej7i72y4em4

答案 1 :(得分:4)

我非常怀疑global关键字是否会从PHP中删除,因为它需要对许多应用程序进行大量重写,并且PHP在向后兼容性方面一直很重要。

此外,与魔术引语等真实的kludges不同,global即使不鼓励也是一种有效的语言结构。

据我所知,没有具体的计划,甚至没有认真的讨论。

也就是说,不使用它通常是一件好事,而是使用函数参数或类属性。

答案 2 :(得分:3)

我认为,它将在未来版本中使用(作为后向兼容性)。 但我建议你重写这些函数,因为全局变量是邪恶的:)

答案 3 :(得分:1)

同意。现在突然下降的可能性很小。您仍然应该重写自己的代码以避免全局。