我在PHP中发现了奇怪的行为,它看起来像"反向注册全局变量"。先试试这个:
session_start();
$_SESSION['test'] = NULL;
echo $_SESSION['test'];
不输出任何内容。然后修改第2行:
session_start();
$test = 1;
echo $_SESSION['test'];
输出"1"!
如果我设置$_SESSION['test']为NULL,这只会发生!
如果100%关闭,则注册全局变量
我的主机提供商有PHP 5.2.17。这在我的本地5.3.6上没有发生。
这是一个bug还是有相应的设置?
问题解决了!
我把php.ini从
session.bug_compat_42 = On
session.bug_compat_warn = Off
:
session.bug_compat_42 = Off
session.bug_compat_warn = Off
谢谢Kerrek SB! 这种情况不会发生在我身上
http://sandbox.phpcode.eu/g/b61fd.php试着联系你们的技术支持,但我认为这是不可能的
您确定使用的是PHP v5.2.17吗?
检查<?php phpinfo(); ?>
在4.3.0及以后的版本中不应该出现这种情况…