Firefox 遵循真正的规范,不会将 '+' 解码为空格...事实上,它会进一步将其编码为 '%2B' 以存储 Cookie。如果您使用 JavaScript 读取 Cookie 并对其进行 unescape,则所有空格都将变为 '+'。
要解决此问题,请使用 setrawcookie 和 rawurlencode
<?php
setrawcookie('cookie_name', rawurlencode($value), time()+60*60*24*365);
?>
唯一变化是空格将编码为 '%20' 而不是 '+',现在将正确解码。