【问题标题】:Access to non-current-user sessions data in PHP在 PHP 中访问非当前用户会话数据
【发布时间】:2010-12-31 17:31:27
【问题描述】:

除了当前连接的客户端 ($_SESSION) 处于活动状态的会话之外,是否可以访问其他用户会话中的数据?

如果有,怎么做?

【问题讨论】:

    标签: php session nonclient


    【解决方案1】:

    是的,但这将是一个 hack。您将不得不查看会话存储机制并直接阅读它。我相信它默认是文件,存储在/tmp

    如果您需要更精确,请考虑定义自己的会话存储机制,然后提供额外的挂钩来完成您想要的。

    http://www.php.net/manual/en/function.session-set-save-handler.php

    【讨论】:

    【解决方案2】:

    您可以通过设置会话 id 来检索会话数据:

    http://example.com/index.php?PHPSESSID=1234

    在哪里 1234 是会话ID

    【讨论】:

      【解决方案3】:

      是的,在 session_start() 之前调用 session_id() 并指定您感兴趣的 ID。相同的函数还返回当前会话 ID,您可以记录或传递到其他地方。您可以通过关闭会话、设置新 ID 并重新启动来多次执行此操作。它将透明地提供访问 ($_SESSION)。请记住将其设置回去,因为它会更新会话 ID cookie。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-02-07
        • 1970-01-01
        • 2018-01-30
        • 1970-01-01
        相关资源
        最近更新 更多