我过去多次使用会话变量,没有问题,但现在它让我…
我正在设置的$_SESSION
var在每次PHP脚本被触发时都变得不设置,尽管它一次为一个变量设置ok。
if (!isset($_SESSION['badList'])) {
print 'not set - again?';
$_SESSION['badList'][0] = $lineNum;
}
else
{
$_SESSION['badList'][count($_SESSION)] = $lineNum;
}
这里没有设置-再次?当我每次执行适当的操作时,即PHP无法找到初始会话变量,会话缓存似乎在脚本运行时完全清除,这有点破坏了会话的意义。
我能做什么?多谢。
确保您已经调用了session_start()
, /etc/php.ini
(或系统等效)具有session.save_path
集(通常是/var/lib/php/session/
)并且该目录可由您的web服务器写入(在Linux上应该是drwxrwx---
)并且您的磁盘未满。如果你的会话被写入远程存储(数据库,memcached等),确保你可以用你的应用程序使用的凭据连接到它(如果适用)。
edit:还确保您在请求结束时调用session_write_close()
-如果您不这样做,则会话数据可能不会写入