php会话的奇怪行为

时间:2011-01-23 21:47:54

标签: php session

即时通讯使用php服务器,使用ubuntu 8.04:

PHP 5.2.4-2ubuntu5.12 with Suhosin-Patch 0.9.6.2 (cli) (built: Sep 20 2010 13:33:05)
Copyright (c) 1997-2007 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies

我发现了一个奇怪的行为:

<?php
session_name('session');
session_start();

$_SESSION['username']='realName';
$username='otherName';
?>

这导致,php保存在会话变量'otherName'(而不是'realName')中。为什么php将$ username保存到会话变量中?我怎样才能禁用它?

提前感谢任何帮助... :)

1 个答案:

答案 0 :(得分:3)

看起来你的php.ini中有register_globals = on。自PHP 5.3起,此选项已被弃用,您应该将其关闭。可以在此处找到更多信息:http://www.php.net/manual/en/security.globals.php