我在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。
这是一个错误还是有设置?
答案 0 :(得分:2)
问题解决了!
我改变了php.ini:
session.bug_compat_42 = On
session.bug_compat_warn = Off
要:
session.bug_compat_42 = Off
session.bug_compat_warn = Off
谢谢Kerrek SB!
答案 1 :(得分:0)
答案 2 :(得分:0)
您确定使用的是PHP v5.2.17吗?
检查
<?php phpinfo(); ?>
这不应该发生在4.3.0及更高版本......