【发布时间】:2010-11-26 08:29:41
【问题描述】:
如果我有很多设置要存储在一个 cookie 中,我应该创建多个 cookie,每个 cookie 都有一个选项,还是一个大 cookie 有多个选项在序列化数组中或其他什么?
这两种方法有什么优缺点吗?大多数人都做什么?
【问题讨论】:
如果我有很多设置要存储在一个 cookie 中,我应该创建多个 cookie,每个 cookie 都有一个选项,还是一个大 cookie 有多个选项在序列化数组中或其他什么?
这两种方法有什么优缺点吗?大多数人都做什么?
【问题讨论】:
嗯,我们主要做会话——发送一个带有用户标识符的 cookie,并将所有选项值存储在服务器上。但如果出于某种原因我真的不想进行会话,我想我可能会使用单个 cookie,因为如果处理得当,它会产生更少的网络流量。
【讨论】:
我更喜欢序列化数组.... Cookie 是存储在客户端机器或服务器上的文件,所以越少越好。
【讨论】:
拥有单独 cookie 的一个很好的理由是,每个 cookie 都独立于其他 cookie,也就是说,单个 cookie 可以在不影响其他 cookie 的情况下过期,如果您这样做不可能将所有内容存储在一个大 cookie 中。
【讨论】:
您的选择是:
PHP 会话 - 不需要 cookie。存储您想要的所有数据。一旦浏览器关闭或会话关闭,就需要新的身份验证。
持久会话 - 一个 cookie 具有一个值,该值是用于访问存储会话的会话密钥或用于访问具有会话信息的数据库表。您可以存储所需的所有数据,而且您不必担心一直登录。
仅 Cookie - 在 cookie 中存储多个值并不总是最好的主意。为什么? 1) Cookie 不安全,任何人都可以读取。 2) 在整个应用程序中跟上多个 cookie 可能会成为未来错误的来源。 3) 依靠客户端/浏览器为您提供准确的数据是永远不会好的。如果您使用 cookie,请确保它们的足迹尽可能少。
大饼干只会让你肚子疼。吃蛋糕吧。
【讨论】: