Maison >développement back-end >tutoriel php >Comment utiliser php pour déterminer si la clé/valeur Memcache existe
memcache est un ensemble de logiciels de cache distribués utilisés pour la mise en cache des données et le stockage des sessions de sites Web distribués, etc. . Utilisez key=>value pour stocker les données et prendre en charge le traitement du stockage par compression des données et le traitement de l'expiration des données.
value ne prend en charge que la chaîne. Si vous avez besoin d'autres formats, vous pouvez d'abord la convertir en json, puis l'enregistrer.
Utilisation :
<?php$m = new Memcache;$m->connect('localhost', 11211);$m->set('foo', 100); // 保存数据echo $m->get('foo'); // 读取数据?>
Utilisez Memcache comme cache de données. Les étapes sont généralement
1. Déterminez si Memcache contient des données et, si c'est le cas, renvoyez-les. directement. Sinon, récupérez les données de la source de données.
2. Après avoir obtenu les données de la source de données, écrivez-les dans Memcache en tant que cache et attendez la prochaine requête.
Juger si Memcache contient des données Généralement, les données sont obtenues via la méthode get et elles sont jugées en fonction. si les données sont fausses.
<?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>'; }?>
Mais ce jugement n'est pas assez rigoureux. Si la valeur est fausse ou nulle, elle sera jugée comme inexistante. On peut juger si la donnée existe en jugeant si la donnée existe. la clé existe.
<?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; }?>
Sortie :
Jugement de valeur normal : la clé foo existe
faux jugement : la clé foo existe
jugement nul : la clé foo existe
jugement d'expiration : la clé foo n'existe pas
jugement après suppression : la clé foo n'existe pas
Seule la clé est supprimée ou a expiré et est jugée inexistante. Dans d'autres cas, même si la valeur est nulle/fausse, elle existera.
Remarque : Si la valeur de value est false, le résultat obtenu en utilisant la méthode memcache get est ""chaîne vide, Étant donné que Memcache ne peut enregistrer que les données de chaîne, false est converti en chaîne vide lors de l'enregistrement.
Cet article explique comment utiliser PHP pour déterminer si la clé/valeur Memcache existe. Pour plus de contenu connexe, veuillez prêter attention au site Web chinois de PHP.
Recommandations associées :
Comment laisser PHP envoyer des données personnalisées via l'en-tête
Comment utiliser inet_aton et inet_ntoa via MySQL Traitement des données d'adresse IP
Contenu pertinent des données php json à l'aide de la sortie de compression gzip
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!