ホームページ  >  記事  >  バックエンド開発  >  memcached と php-memcache(d) を使用します

memcached と php-memcache(d) を使用します

WBOY
WBOYオリジナル
2016-06-23 14:31:45959ブラウズ

memcached 1.2 から 1.3 では、delete() のプロトコルが変更されました。 memcached 1.4 の場合、間違った形式は致命的なエラーを引き起こします:
失敗しました: CLIENT_ERROR bad command line format.
したがって、php pecl-memcache は新しいバージョンでは失敗します。

php pecl-memcached の場合、libmemcache を使用しているため、この問題はありません。
コードで使用する memcache 拡張機能を選択する関数を作成します。

$mem_flag = 0;$mem_conn = null;function mcached_conn(){	global $config, $mem_flag, $mem_conn;	if($mem_flag != 1)	{		if ($config['mcache']['version']==0){		$mem_conn = memcache_pconnect($config['mcache']['host'], 11211);		} else {			$mem_conn = new Memcached();			$mem_conn->addServer($config['mcache']['host'], 11211);		}		$mem_flag = 1;	}	return $mem_conn;}function memcache_version_set($memcache_obj, $key,$value,$flag,$ttl){	global $config;	if ($config['mcache']['version']==0){		return memcache_set($memcache_obj, $key,$value,$flag,$ttl);	} else {		return $memcache_obj->set($key,$value,$ttl);	}}	function memcache_version_get($memcache_obj, $key){	global $config;	if ($config['mcache']['version']==0){		return memcache_get($memcache_obj, $key);	} else {		return $memcache_obj->get($key);	}}function memcache_version_del($memcache_obj, $key){	global $config;	if ($config['mcache']['version']==0){		return memcache_delete($memcache_obj, $key);	} else {		return $memcache_obj->delete($key);	}}

?
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。