0

我发现 setcookie() 函数会转义特殊字符,例如引号。我通过清除那些垃圾符号解决了这个问题:

$new_avt = str_replace("\'","",$_COOKIE['avatar']);
$new_avt = str_replace('alt=','',$new_avt);

但我觉得这个解决方案很难看。此外,如您所见,我必须删除“alt”属性,因为我无法正确删除其中的转义符号。我想出的唯一其他解决方案是将编码字符串写入cookie,然后在获取cookie时对其进行解码。这个解决方案会比 str_replace() 更快吗?有没有更好的方法?

谢谢你的时间。

4

1 回答 1

2

如果您在 cookie 中存储大量数据,那么您可能需要考虑使用会话。这将数据存储在服务器上,而不是在每次请求时将数据发送到客户端/从客户端发送。任何可以序列化的变量都可以存储在会话变量中。见http://www.php.net/manual/en/intro.session.php

于 2011-05-10T12:44:42.343 回答