访问 PHP 中的活动会话
如何获取服务器上所有活动 PHP 会话的列表,并从一个用户的实例中访问它们?
激励案例是显示网站上所有当前活动用户的列表,其中用户名存储在每个用户的PHP会话中。
注意:我知道我可以通过数据库(甚至是文件系统)创建自己的状态,但我正在寻找一种利用内置PHP会话机制的方法。
如何获取服务器上所有活动 PHP 会话的列表,并从一个用户的实例中访问它们?
激励案例是显示网站上所有当前活动用户的列表,其中用户名存储在每个用户的PHP会话中。
注意:我知道我可以通过数据库(甚至是文件系统)创建自己的状态,但我正在寻找一种利用内置PHP会话机制的方法。
会话列表
<?php
print_r(scandir(session_save_path()));
?>
检查特定会话
<?php
session_start();
echo (file_exists(session_save_path().'/sess_'.session_id()) ? 1 : 0);
?>
上次更改时间会话文件
<?php
session_start();
echo filectime(session_save_path().'/sess_'.session_id());
?>
正如已经做到的那样,以这种方式处理会话并不是最佳实践,但是如果需要,这些会话将无需检查/修改会话存储路径即可工作(如果您切换到具有不同配置的另一台服务器,则很有用)。