Can memcached store complex objects?
use http://php.net/manual/en/function.serialize.php
<?php// connect memcache$memcache_obj = new Memcache;$memcache_obj->connect('localhost', 11211);// simple example classclass MyClass { private $var = 'default'; public function __construct($var = null) { if ($var) { $this->setVar($var); } } public function getVar() { return $this->var; } public function setVar($var) { $this->var = $var; }}$obj1 = new MyClass();$obj2 = new MyClass('test2');$obj3 = new MyClass();$obj3->setVar('test3');// dump the values using the method getVarvar_dump($obj1->getVar(), $obj2->getVar(), $obj3->getVar());// store objects serialized in memcache, set MEMCACHE_COMPRESSED as flag so it takes less space in memory$memcache_obj->set('key1', serialize($obj1), MEMCACHE_COMPRESSED);$memcache_obj->set('key2', serialize($obj2), MEMCACHE_COMPRESSED);$memcache_obj->set('key3', serialize($obj3), MEMCACHE_COMPRESSED);// unset the objects to prove it ;-)unset($obj1, $obj2, $obj3);// get the objects from memcache and unserialze// IMPORTANT: THE CLASS NEEEDS TO EXISTS! // So if you have MyClass in some other file and include it, it has to be included at this point// If you have an autoloader then it will work easily ofcourse :-)$obj1 = unserialize($memcache_obj->get('key1'));$obj2 = unserialize($memcache_obj->get('key2'));$obj3 = unserialize($memcache_obj->get('key3'));// dump the values using the method getVarvar_dump($obj1->getVar(), $obj2->getVar(), $obj3->getVar());?>