我有我的应用程序的会话ID。现在我想通过使用此会话ID获取所有会话变量。
我使用<?php echo session_id()?>
获取会话ID但是如何使用此会话ID获取所有会话对象值?
答案 0 :(得分:59)
根据php.net:有几种方法可以将现有会话ID泄露给第三方。泄露的会话ID使第三方能够访问与特定id相关联的所有资源。首先,携带会话ID的URL。如果链接到外部站点,则包含会话ID的URL可能会存储在外部站点的引用者日志中。其次,更活跃的攻击者可能会收听您的网络流量。如果未加密,则会话ID将通过网络以纯文本形式传输。这里的解决方案是在您的服务器上实现SSL,并使其成为用户必备的。
这引出了一个问题,你如何拥有会话ID但无法访问脚本?
无论如何,您需要设置会话ID然后启动它...然后访问数据。
session_id($whatever_id_you_have);
session_start();
echo $_SESSION['somekey'];
答案 1 :(得分:1)
$_SESSION
正是您要找的。请务必先致电session_start()
。见http://php.net/session.examples.basic
答案 2 :(得分:1)
var_dump($_SESSION);
将显示当前会话的内容,然后您可以像访问普通数组一样访问这些值。
答案 3 :(得分:0)
您可以使用此功能检查所有会话值..
print_r($_SESSION);