(php) SESSION的问题,共不共享?

我知道每个用户都有一个seesion id,可是为什么在服务器端写:

$_SESSION[user_name] = abc;

我换浏览器都能读到abc啊,那为什么还用SESSION来存储登录的用户名啊???
分明是每个用户都有自己的session_id啊,应该不能共享的啊。
我可能绕进去了,不要笑话我。

 $_SESSION[user_name] = abc;

这是一个赋值过程吧?赋值后哪里都可以读取。

换浏览器是什么意思?(IE换成firefox), 还是浏览器的多窗口(TAB)切换? 还是关闭浏览器后打开?

在同一请求中,将用户名保存起来,方便后面程序读取。而不至于每次都去查数据库。

这个应该不会的吧

赋值了之后,再读。。跟id没有关系了吧?

php 的session其实跟用户状态无关,它只是个简单的kv存储系统,
因为http协议是无状态的,为了识别用户,靠的还是用户请求里的cookie,
这个cookie字段就是phpsessionid默认情况下,通过用户请求传递,
任何人,只要取得了sessionid,都能获取session内容的。
就跟你保险柜一样,只要有钥匙密码,谁都能取,
只是这个钥匙密码只给了你一个人而已,故默认情况下只有你一个人能取

发表评论

电子邮件地址不会被公开。 必填项已用*标注