Use Memcache::replace() first instead of Memcache::set(): http://docs.php.net/manual/en/memcache.replace.php#100023

This commit is contained in:
Till Klampaeckel 2012-04-16 23:22:18 +03:00 committed by Fabien Potencier
parent a47a5aa52c
commit 962f975a6f
1 changed files with 4 additions and 1 deletions

View File

@ -117,7 +117,10 @@ class MemcacheSessionHandler implements \SessionHandlerInterface
*/
public function write($sessionId, $data)
{
return $this->memcache->set($this->prefix.$sessionId, $data, 0, $this->memcacheOptions['expiretime']);
if (!$this->memcache->replace($this->prefix.$sessionId, $data, 0, $this->memcacheOptions['expiretime'])) {
return $this->memcache->set($this->prefix.$sessionId, $data, 0, $this->memcacheOptions['expiretime']);
}
return true;
}
/**