在我的一个项目中,我在数据库中存储一个临时数据,如果它的sessionId不在使用中,我必须删除它们,是否有一个简单的方法来检查会话id是否在使用中?
存储上次访问的时间戳,并删除时间比当前时间早X分钟的行
您可以使用session_name ([string $name])来命名您的会话,
示例:session_name('myname')
,
然后用session_id ([string $id])检查该名称是否有会话id
的例子:
if(session_id('myname') != "")
echo session_id('myname');
else
//your code here
是否有一个简单的方法来检查会话id是否在使用?
如果你正在使用默认的会话处理程序,那么检查会话文件是否存在并且自time()-session_cache_expire()以来是否被修改。
然而,一个更好的解决方案是使用数据库绑定会话处理程序。当试图从会话外部查看会话数据时,这要灵活得多,您可以只做一个简单的连接来找到匹配的数据,但解决问题的正确方法是在会话处理程序中实现会话管理代码(即在删除会话时删除数据)!