【问题标题】:JavaScript/PHP cookie serialization methods?JavaScript/PHP cookie 序列化方法?
【发布时间】:2010-10-13 16:21:24
【问题描述】:

我有一个表单,我想将它的值存储在 cookie 中,这样用户就不必每次访问都重新输入表单。 (表单是一些筛选搜索结果的选择。)

我希望 cookie 序列化可以轻松地从 JavaScript 中读取(显然是设置表单 onLoad),但我也希望能够轻松地从 PHP 中读取 cookie(这样我就可以使用表单数据以过滤搜索结果)。

我将如何使用将 multiple="multiple" 设置为 cookie 的选择序列化表单并使其在 JavaScript 和 PHP 中易于读取?

请不要宣传验证,我在服务器端正确地这样做了。

如果我的问题有更聪明的解决方案,请告诉我。

顺便说一句:我在服务器上使用 CodeIgniter 和 Prototype/Scriptaculous JavaScript 库。

解决方案:使用 Prototype 的 Object.toJSON(Form.serialize(form, true)) 用于 JavaScript,并使用 PHP 的 json_decode(string, bool) 从 JSON 中获取 PHP 中的关联数组。

【问题讨论】:

    标签: php javascript serialization cookies


    【解决方案1】:

    您可以使用已经以多种语言实现的JSON format

    【讨论】:

    • +1。这个方法应该很快,因为 PHP 已经有了 json 编码/解码功能。
    【解决方案2】:

    我会推荐 YAML。它基本上被设计为多种语言的通用序列化方法,包括 JavaScript 和 PHP。

    来自 YAML 网站:

    YAML 旨在满足 Perl、Python 的序列化需求, Ruby、Tcl、PHP、Javascript 和 Java。 它也被设计成 这些语言之间可以互操作。 这意味着 YAML 序列化 Perl 生成的可以通过以下方式处理 蟒蛇。

    这是一篇关于该主题的站点文章:

    http://www.sitepoint.com/blogs/2004/04/22/serializing-php-data-structures-for-javascript/

    YAML 网站:

    http://www.yaml.org/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-05-29
      • 1970-01-01
      • 2015-11-26
      • 1970-01-01
      • 2014-12-13
      • 2011-09-23
      • 1970-01-01
      • 2015-10-18
      相关资源
      最近更新 更多