开发者

Change serialization functions in PHP for Memcached

By default Memcached module in PHP uses PHP's built in serialization functions. Because I'm accesing the same keys from other programming languages, I have found a serialization module that works in all languag开发者_如何学Ces. How do I use my serialization module instead of PHP's when storing/retrieving keys from Memcached?


If your memcached php module has been compiled with HAVE_JSON_API defined (which I think is true by default since php 5.2. Documentation says "Requires PHP 5.2.10+") you can set the JSON serializer with

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

(and there are json en-/decoders for many, many languages)

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


Just put your serialized data in a string and save it with memcache,

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

If the serailization generates binary data. You should base64 encode it yourself because PHP's binary encoding is very in-efficient.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜