【发布时间】:2016-08-01 07:52:56
【问题描述】:
在我的实时服务器上,我有一个像这样的文件夹结构:
- index.php
- unset.php
- info.php
- deep/
-- index.php
index.php 中的代码用于查看是否设置了会话变量,如下所示:
<?php
session_start();
print session_id();
print "dev <br>";
echo '<pre>';
print_r($_SESSION);
echo '</pre>';
?>
我用来设置会话变量的deep/index.php中的代码如下:
<?php
session_start();
print session_id();
$_SESSION['usr'] = "bro";
echo '<pre>';
print_r($_SESSION);
echo '</pre>';
?>
最后是取消设置会话的unset.php 文件。文件中的代码是:
<?php
session_start();
echo "<br>";
echo session_id();
echo "<br>";
session_unset();
session_destroy();
header("Location:/");
?>
问题
如果你去http://test.haidrr.com
您将看到 /index.php 文件,该文件显示一个空数组,因为尚未设置会话变量。注意顶部的session_id()。现在,如果您转到/deep,index.php 文件将设置一个会话变量,该变量将显示在数组中。
好的,现在回到/,如果幸运的话,您会在数组中看到会话变量。 (我有时看不到,有时有效,有时无效)。尝试/unset.php 变量,会话变量仍然存在。
这个例子在我的本地主机上完美运行。我还包含了一个具有phpinfo() 函数的info.php 文件。
【问题讨论】: