我托管在IX虚拟主机上,遇到了让我感到奇怪的事情.我所有的$_SESSION变量都自动分配给同名的常规变量.那是正常的PHP行为吗?我在PHP.net手册中进行了查找,但没有找到答案.这是一个示例脚本:
<?PHP
$_SESSION['myvar'] = "hello";
echo $myvar; // after a page refresh, displays hello
$myvar = "goodbye";
echo $_SESSION['myvar']; // displays goodbye
?>
在我的本地主机上,我得到了一个错误消息,例如未定义的变量:$myvar,但在IX上,脚本起作用了!危险或正常的PHP行为?提前致谢.
解决方法:
此“功能”由名为register_globals
的PHP.ini指令控制.自PHP 4.2起,该功能已默认禁用,并已在PHP 5.4中完全删除.
除非您拥有依赖于它的旧代码,否则我将真诚建议您将其关闭.可以说,安全隐患非常重要.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。