2009-11-29 3 views
1

Par défaut, le module Memcached en PHP utilise les fonctions de sérialisation de PHP. Parce que j'accède aux mêmes clés d'autres langages de programmation, j'ai trouvé un module de sérialisation qui fonctionne dans toutes les langues. Comment puis-je utiliser mon module de sérialisation au lieu de PHP lors du stockage/récupération des clés de Memcached?Modifier les fonctions de sérialisation en PHP pour Memcached

Répondre

2

Il suffit de mettre vos données sérialisés dans une chaîne et l'enregistrer avec memcache,

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

Si le serailization génère des données binaires. Vous devriez l'encoder en base64 car l'encodage binaire de PHP est très inefficace.

4

Si votre module memcached php a été compilé avec HAVE_JSON_API défini (qui je pense est vrai par défaut depuis PHP 5.2. Documentation dit « nécessite PHP 5.2.10+ ») vous pouvez régler le sérialiseur JSON avec

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

(et il y a en- JSON/décodeurs pour de nombreuses langues)

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