string(8)"laruence"} $name和$_SESSION['name']是八竿子打不着的两个变量"/>
PHP头条
热点:

PHPsession的奇怪守则


PHP session 的奇怪规则

session_start();
var_dump($_SESSION);
$name = 'laruence';
$_SESSION['name'] = null;

输出: array(1) { ["name"]=> string(8) "laruence" }

$name 和 $_SESSION['name']是八竿子打不着的两个变量, 它凭什么给弄成等同于同一个变量, 发明PHP那人脑残吧. 
------解决方案--------------------
引用:
引用:PHP code?12345

输出:
array(1) { ["name"]=> NULL }


是你自己把register_glob……


是我错了,这个问题与register_global无关。不过我的5.4版本就没有这个问题,5.4也已经没有register_global这个选项了。你这代码貌似引用自laruence的博客:http://www.laruence.com/2009/07/13/976.html

他在里面已经解释了原因。在session.bug_compat_42开启的情况下, PHP会认为变量name是$_SESSION['name']的一个引用, 在session_close的时候, 会把变量a的值回写。

www.phpzy.comtrue/phprm/13498.htmlTechArticlePHPsession的奇怪守则 PHP session 的奇怪规则 session_start(); var_dump($_SESSION); $name='laruence'; $_SESSION['name']=null; 输出:array(1){["name"]=>string(8)"laruence"} $name和$_SESSION['name']是八竿子打不着的两个变量...

相关文章

相关频道:

PHP之友评论

今天推荐