如何获取yii2中的在线用户列表

时间:2016-09-24 11:41:52

标签: php yii2

如何在Yii2应用程序中获取在线用户列表?我使用会员资格,并希望获得在控制面板中向管理员显示的在线用户列表。

有没有办法获取所有登录用户的列表?

谢谢! 最好的问候

1 个答案:

答案 0 :(得分:3)

由于PHP(无状态)的性质,这并不容易。您需要存储此类用户的列表并使其保持最新。

我使用以下方法:

  1. 每次用户执行操作时,都会在用户数据库中保存时间戳。
  2. 在过去5分钟内执行操作的用户列表是在线列表 用户。
  3. 当然这只是一个近似值:

    • 用户可以阅读单页超过5分钟,因此不计算在内 虽然他是在线,但在线。
    • 用户可以在不到5分钟的时间内注销,仍然可以在线计算。
    • 更改5分钟计时器无法解决问题。

    如果您想要更精确的结果,则需要更复杂的方法。