【问题标题】:Change serialization functions in PHP for Memcached在 PHP 中为 Memcached 更改序列化函数
【发布时间】:2010-12-21 10:17:41
【问题描述】:

默认情况下,PHP 中的 Memcached 模块使用 PHP 的内置序列化函数。因为我从其他编程语言访问相同的键,所以我找到了一个适用于所有语言的序列化模块。从 Memcached 存储/检索密钥时,如何使用我的序列化模块而不是 PHP 的?

【问题讨论】:

    标签: php serialization memcached


    【解决方案1】:

    只需将您的序列化数据放在一个字符串中并使用 memcache 保存即可,

    $memcache->add('your_key', str, false, 30);
    

    如果序列化生成二进制数据。你应该自己对它进行base64编码,因为PHP的二进制编码效率很低。

    【讨论】:

      【解决方案2】:

      如果你的 memcached php 模块是用定义的 HAVE_JSON_API 编译的(我认为自 php 5.2 起默认情况下是这样。文档说“需要 PHP 5.2.10+”)你可以设置 JSON 序列化器

      $memchache->setOption(Memcached::OPT_SERIALIZER, Memcached::SERIALIZER_JSON);
      

      (并且有许多许多语言的 json 编码/解码器)

      http://docs.php.net/memcached.constants

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-05-08
        • 1970-01-01
        • 1970-01-01
        • 2016-02-08
        • 2013-01-04
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多