在http://myDomain.com/directory_1/index.php中,我使用session_start()
创建会话。
然后,在http://myDomain.com/directory_2/index.php中,我使用session_start()
创建了一个会话。
现在,在http://myDomain.com/index.php中,我想访问与任何子目录绑定的所有会话。
这是怎么做到的?
编辑很抱歉,我刚刚意识到最初在directory_1 / index.php和directory_2 / index.php中创建会话时,我这样做了如下:
$cookie_domain=$_SERVER['HTTP_HOST'];
if (substr($cookie_domain, 0, strlen('www.')) == 'www.') {$cookie_domain = substr($cookie_domain, strlen('www.'), strlen($cookie_domain) );} //remove leading www (if exists)
$cookie_domain='.'.$cookie_domain; //Add . wildcard
$cookie_path=dirname($_SERVER['PHP_SELF']).'/';
session_set_cookie_params(0, $cookie_path,$cookie_domain);
session_start();
答案 0 :(得分:1)
你只需要添加:
在session_start()
位于页面顶部(index.php),然后您将能够访问在任何地方(目录外)声明的$_SESSION
个变量。
答案 1 :(得分:1)
会话cookie的默认路径为/
,因此(除非您已更改此设置),您可以通过将session_start()
置于顶部而无论目录如何都能访问同一会话/index.php
。