当我使用session_destroy()时,我得到"会话对象销毁失败".
session_start();
if(isset($_SESSION['user_id'])){
$_SESSION=array();
if(isset($_COOKIE[session_name()])){
setcookie(session_name(),'',0,"/");
}
session_destroy();
}
Run Code Online (Sandbox Code Playgroud)
是什么导致这个错误?
hak*_*kre 19
错误:
警告:session_destroy():会话对象销毁失败
这是相当微不足道的,没有会话已经启动对象已被评估,所以你不能破坏它.
该@运营商并不总是有效的,例如,错误报告功能.
编辑:
1)导致此错误的原因是什么?
当PHP尝试删除会话文件时,通常会导致此错误,但无法找到它.
在你的情况下,PHP中session_destroy只有一个地方导致了这一点.那时session.save_handler(也见)也会 为destroy动作session_set_save_handler返回.这可能取决于您使用哪种类型的保存处理程序,默认的是文件.使用那个,当设置错误时(例如,不是可访问的目录),这将导致这样的错误.FALSEsession.save_path
2)为什么"@"不能抑制错误?
这取决于输出的创建方式和PHP配置.@并不总是有效.例如,注册的回调set_error_handler仍会收到这些消息.
| 归档时间: |
|
| 查看次数: |
30381 次 |
| 最近记录: |