如果我们在PHP会话名称中使用点,为什么浏览器会丢失会话?
有人能解释一下,如果我们在会话名称中使用点(.),浏览器为什么会丢失会话吗 例如:如果我们在PHP会话名称中使用点,为什么浏览器会丢失会话?,php,Php,有人能解释一下,如果我们在会话名称中使用点(.),浏览器为什么会丢失会话吗 例如: session_name('abc'); // works session_name('a.bc'); // doesn't work 从PHPsession\u name()docs: 会话名称引用在cookie和URL(例如PHPSESSID)中使用的会话名称。它应该只包含字母数字字符;它应该简短且具有描述性(即,对于启用cookie警告的用户)。如果指定了名称,则当前会话的名称将更
session_name('abc'); // works
session_name('a.bc'); // doesn't work
从PHP
session\u name()
docs:
会话名称引用在cookie和URL(例如PHPSESSID)中使用的会话名称。它应该只包含字母数字字符;它应该简短且具有描述性(即,对于启用cookie警告的用户)。如果指定了名称,则当前会话的名称将更改为其值
注意“它应该只包含字母数字字符”。将$name
指定给会话名称($name)
因此,当您提供的会话名称无效时,会生成一个新的会话名称。cookie名称中不能有句点。只允许使用特殊字符u和-。其余的必须是字母和数字。
should contain only alphanumeric characters;