在对公司网站进行编码时,我注意到了$ GLOBALS的一种非常奇怪的行为。我无法发布我写的确切代码,因为它有机密信息,但我已经创建了一个测试代码来演示我正在谈论的行为。
<?php
$sampleText = "Hello World";
function test(){
echo $GLOBALS['sampleText'];
}
test();
此代码在我的localhost中工作正常,但当我将其上传到公司服务器时,它只能工作一次。我的意思是,当代码第一次执行时,它将按预期输出“Hello World”,但如果再次执行,则没有输出。当我使用phpinfo()检查服务器的php版本时,它说它的版本是在ubuntu中运行的5.5.9而我的localhost中的php版本是5.3.0并且我使用的是Windows 7。
我的问题是: *这是一个错误? *操作系统的差异是否与此行为有关? *它正在发生什么其他PHP版本?