Php 如何在我的网页上查找活动会话数

Php 如何在我的网页上查找活动会话数,php,Php,我需要查看网页上所有活动的会话,在搜索之后,我发现了一个函数session\u status(),它包含在PHP5.4中,我想这会告诉活动会话。但是直到现在我还不知道如何使用这个函数。有人能举例说明如何使用这个函数吗。我的系统上安装了PHP5.4,所以这不是一个问题。据我所知,没有自动的方法可以做到这一点。一种简单的方法是查看正在写入PHP会话的tmp目录,并计算其中有多少文件(假设会话存储在文件中)。据我所知,没有自动方法可以做到这一点。一种简单的方法是查看正在写入PHP会话的tmp目录,并计

我需要查看网页上所有活动的会话,在搜索之后,我发现了一个函数
session\u status()
,它包含在PHP5.4中,我想这会告诉活动会话。但是直到现在我还不知道如何使用这个函数。有人能举例说明如何使用这个函数吗。我的系统上安装了PHP5.4,所以这不是一个问题。

据我所知,没有自动的方法可以做到这一点。一种简单的方法是查看正在写入PHP会话的tmp目录,并计算其中有多少文件(假设会话存储在文件中)。

据我所知,没有自动方法可以做到这一点。一种简单的方法是查看正在写入PHP会话的tmp目录,并计算有多少文件(假设会话存储在文件中)。

关键是不可能看到所有活动的会话,您无法判断会话是否处于活动状态。如果用户未执行任何操作(如注销)而关闭页面,会话信息(会话文件或其他存储)仍保留在服务器中,并等待会话GC将其清除。

关键是不可能看到所有活动的会话,您无法判断会话是否处于活动状态。如果用户未进行任何操作(如注销)就关闭页面,会话信息(会话文件或其他存储)仍保留在服务器中,并等待会话GC将其清除。

此功能在PHP中不存在,必须是此人自制的功能。我认为这是不可能的,没有其他的程序,如shell脚本或类似的东西

上面来自您的链接看起来像是一个php5.4扩展,您必须安装manuell。

此功能在PHP中不存在,必须是此人的自制功能。我认为这是不可能的,没有其他的程序,如shell脚本或类似的东西


上面来自您的链接看起来像是一个php5.4扩展,您必须安装manuell。

这很痛苦,但这是可能的。除了像endyourif提到的那样计算会话文件外,您还可以让所有活动会话每隔30秒左右(通过ajax)更新其ip地址或用户id以及数据库表中的时间戳。然后,您将能够查询在任何时间前x秒内有多少用户处于活动状态


这可能会比平时更快地消耗资源,因此如果流量很大,请小心。使用内存表可能会有所帮助。此外,您可能希望每隔一段时间运行一次cron作业,以清除不再需要的条目,例如任何超过15分钟的条目。

这是一种痛苦,但也是可能的。除了像endyourif提到的那样计算会话文件外,您还可以让所有活动会话每隔30秒左右(通过ajax)更新其ip地址或用户id以及数据库表中的时间戳。然后,您将能够查询在任何时间前x秒内有多少用户处于活动状态


这可能会比平时更快地消耗资源,因此如果流量很大,请小心。使用内存表可能会有所帮助。此外,您可能希望每隔一段时间运行一次cron作业,以清除不再需要的条目,例如任何超过15分钟的条目。

PHP(5.4或任何版本)没有内置函数
session\u status()
。你是从哪里找到这些信息的?@Jordan我在stackoverflow上读到的,这就解释了为什么它还没有文档化——5.4仍在预发布中。然而,您似乎误解了此功能的目的。它不会告诉您所有“活动”会话的任何信息——它只告诉您当前会话的状态,即属于正在查看页面的用户的会话。您的问题与可能的重复问题有什么不同?PHP(5.4或任何版本)没有内置函数
会话状态()
。你是从哪里找到这些信息的?@Jordan我在stackoverflow上读到的,这就解释了为什么它还没有文档化——5.4仍在预发布中。然而,您似乎误解了此功能的目的。它不会告诉你关于所有“活动”会话的任何信息——它只告诉你当前会话的状态,即属于正在查看页面的用户的会话。是什么使你的问题与可能的重复问题不同?这可以工作,但请记住,在用户关闭浏览器或导航到其他位置后,文件仍将在那里保留一段时间。您需要将会话设置为在很短的时间后过期,以使其准确。然后,当页面仍处于打开状态时,您必须保持这些会话处于活动状态,这可以通过每隔x秒重复ajax调用来完成。这可以奏效,但请记住,在用户关闭浏览器或导航到其他位置后,该文件仍将在那里保留一段时间。您需要将会话设置为在很短的时间后过期,以使其准确。然后,当页面仍然打开时,您必须保持这些会话处于活动状态,这可以通过每x秒重复ajax调用来完成。我的系统上安装了PHP5.4,函数正在运行,并且没有显示任何错误。因此该函数存在于PHP.NET中,但可能尚未更新。我认为这是不可能的,PHP中的查询会话。我认为,除非您在会话后查看此文件夹,但关闭的会话不会立即删除。如果你找到另一种方式,我很兴奋?我有PHP5.4安装在我的系统和功能正在工作,它没有显示任何错误。因此该函数存在于PHP.NET中,但可能尚未更新。我认为这是不可能的,PHP中的查询会话。我认为,除非您在会话后查看此文件夹,但关闭的会话不会立即删除。如果你能找到另一种方式让我兴奋?