PHP - $ _Session

Gio*_*Far 0 php session

我有一个关于PHP会话的简单问题.

如果我有一个网络服务器,我使用像这样的会话

$_SESSION['user_login'] = 1;
Run Code Online (Sandbox Code Playgroud)

此会话是否也与其他用户共享?
我的意思是:

如果用户A正在登录他的会话有1;
现在用户B正在进行登录,他的会话为1

所以:

userA--->Session=1
userB--->Session=1
Run Code Online (Sandbox Code Playgroud)

现在userA做了一次注销,我用
unset($_SESSION['user_login']);

这个问题破坏了会话:
the session of userB is still at 1??或者他的会话结束了吗?
我不明白会话是在每个线程的堆栈上还是与每个线程共享.

Joh*_*nde 6

在PHP中,会话是每个用户.为每个用户分配一个唯一的会话ID以标识其会话.只有具有该会话ID的用户才能访问与其关联的会话信息.

手册:

访问您网站的访问者被分配了唯一的ID,即所谓的会话ID.这可以存储在用户端的cookie中,也可以在URL中传播.

会话支持允许您在$ _SESSION超全局数组中的请求之间存储数据.当访问者访问您的站点时,PHP将自动检查(如果session.auto_start设置为1)或您的请求(显式通过session_start())是否已随请求发送特定会话ID.如果是这种情况,则重新创建先前保存的环境.

查看会话劫持,了解另一个恶意用户如何劫持其他用户的会话.