0

我的页面都包含以 .开头的相同文件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,那么它会按预期工作。

4

0 回答 0