memcache は、データ キャッシュや分散 Web サイト セッション ストレージなどに使用される分散キャッシュ ソフトウェアのセットです。 。 key=>value メソッドを使用してデータを保存し、データ圧縮ストレージ処理とデータ有効期限処理をサポートします。
value は文字列のみをサポートします。他の形式が必要な場合は、まず json に変換してから保存できます。
使用法:
<?php$m = new Memcache;$m->connect('localhost', 11211);$m->set('foo', 100); // 保存数据echo $m->get('foo'); // 读取数据?>
memcache をデータ キャッシュとして使用する手順は通常
1 です。memcache にデータがあるかどうかを確認し、データがある場合は直接返します。それ以外の場合は、データ ソースからデータを取得します。
2. データソースからデータを取得したら、それをキャッシュとして memcache に書き込み、次のリクエストを待ちます。
memcache にデータがあるかどうかを判断するには、通常、get メソッドでデータを取得し、データは間違っています。
<?php$m = new Memcache;$m->connect('localhost', 11211);$m->set('foo', 100);if($m->get('foo')){ echo 'foo 存在<br>'; }else{ echo 'foo 不存在<br>'; }$m->delete('foo');if($m->get('foo')){ echo 'foo 存在<br>'; }else{ echo 'foo 不存在<br>'; }?>
ただし、この判定は厳密ではありません。値が false または null の場合、キーが存在するかどうかでデータが存在するかどうかを判断できます。 。
<?php$m = new Memcache;$m->connect('localhost', 11211);// 正常值判断echo '正常值判断:';$m->set('foo', 100);if(check_key_exists($m, 'foo')){ echo 'foo key存在<br>'; }else{ echo 'foo key不存在<br>'; }// false判断echo 'false判断:';$m->set('foo', false);if(check_key_exists($m, 'foo')){ echo 'foo key存在<br>'; }else{ echo 'foo key不存在<br>'; }// null判断echo 'null判断:';$m->set('foo', null);if(check_key_exists($m, 'foo')){ echo 'foo key存在<br>'; }else{ echo 'foo key不存在<br>'; }// 数据过期后判断,1秒后过期echo '过期判断:';$m->set('foo', 100, 0, 1); sleep(2);if(check_key_exists($m, 'foo')){ echo 'foo key存在<br>'; }else{ echo 'foo key不存在<br>'; }// delete后判断echo 'delete后判断:';$m->set('foo', 100);$m->delete('foo');if(check_key_exists($m, 'foo')){ echo 'foo key存在<br>'; }else{ echo 'foo key不存在<br>'; }/** * @param Obj $m memcache obj * @param String $name key name * @return Boolean */function check_key_exists($m, $name){ $data = $m->get($name); return $data!==false; }?>
出力:
正常値判定: foo キーが存在します。 False判定:fooキーが存在する
Null判定:fooキーが存在する
期限切れ判定:fooキーが存在しない
削除後の判定:fooキーが存在しない
キーのみis delete または has Expired の場合は、値が null/false であっても存在しないと判断されます。
注: value の値が false の場合、memcache get メソッドを使用して取得される結果は "" 空の文字列です, memcache は文字列データしか保存できないため、保存時に false は空の文字列に変換されます。
この記事では、PHP を使用して memcache キー/値が存在するかどうかを確認する方法について説明します。詳細については、PHP 中国語 Web サイトを参照してください。 関連する推奨事項:php がヘッダーを通じてカスタム データを送信できるようにする方法
mysql を通じて inet_aton と inet_ntoa を使用する方法IP アドレス データの処理
gzip 圧縮を使用した php json データの出力関連コンテンツ
以上がPHPを使用してmemcacheキー/値が存在するかどうかを確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。