views:

162

answers:

2

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 languages. How do I use my serialization module instead of PHP's when storing/retrieving keys from Memcached?

+1  A: 

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.

ZZ Coder
A: 

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

VolkerK