我的网页都包含相同的文件,以session_start();
开头。我设置了四个会话变量,我可以浏览所有页面并保持成功设置:
print_r($_SESSION): Array ( [first_name] => Daniel [last_name] => Jameson [email] => email@gmail.com [logged_in] => 1 )
但是,当我转到index.php
时,所有变量都未设置!没有显示错误或警告:
`print_r($_SESSION): Array ( )
我已经尝试了一百万件事情,我已经缩小了一点:
session_start();
提到了带有BOM编码页面的UTF-8,我做。但我似乎无法找到更多关于它的信息。
我无法向您展示页面本身但我可以说index.php上唯一的php包含在内,并且也包含在其他页面中。没有区别!
修改
更多测试表明存在某种缓存。即使我从php文件中删除$ _SESSION变量,SESSION数组仍然被填充:
print_r($_SESSION): Array ( [first_name] => Daniel [last_name] => Jameson [email] => email@gmail.com [logged_in] => 1 )
编辑2
它与index.php文件名本身有关。如果我将文件重命名为index2.php,那么它按预期工作。