Maison > Article > base de données > Comment implémenter l'opération Redis Zset en php
Opération Zset
//将一个或多个成员元素及其分数值加入到有序集当中。如果某个成员已经是有序集的成员,则更新这个成员的分数值,并通过重新插入这个成员元素,来保证该成员在正确的位置上。分数值可以是整数值或双精度浮点数。 $ret = $redis->zAdd('scores', 98, 'English', 90, 'physics'); //返回有序集中指定区间内的成员。成员按分数值递增排序,分数值相同的则按字典序来排序。 //参数:第四个参数表示是否返回各个元素的分数值,默认为false。 $ret = $redis->zRange('scores', 0, -1, true);//查看Zset所有成员以及它们各自的分数值 //返回有序集中指定区间内的成员。成员按分数值递减排序,分数值相同的则按字典序的逆序来排序。 $ret = $redis->zReverseRange('scores', 0, -1, true); //返回有序集中指定分数区间的成员列表,按分数值递增排序,分数值相同的则按字典序来排序。默认使用闭区间。 $ret = $redis->zRangeByScore('scores', 90, 100, ['withscores'=>true]); //返回有序集中指定分数区间的成员列表,按分数值递减排序,分数值相同的则按字典序的逆序来排序。注意,区间表示的时候大值在前,小值在后,默认使用闭区间。 $ret = $redis->zRevRangeByScore('scores', 100, 90, ['withscores'=>true]); //迭代有序集合中的元素。 //返回值:[元素名=>分数值,,..] $ret = $redis->zscan('scores', $it, '', 10); //返回指定有序集的元素数量。 $ret = $redis->zCard('scores'); //返回有序集中指定分数区间的成员数量。 $ret = $redis->zCount('scores', 90, 100); //返回有序集中指定成员的分数值。若成员不存在则返回false。 $ret = $redis->zScore('scores', 'math'); //返回有序集中指定成员的排名,按分数值递增排序。分数值最小者排名为0。 $ret = $redis->zRank('scores', 'chemistry'); //返回有序集中指定成员的排名,按分数值递减排序。分数值最大者排名为0。 $ret = $redis->zRevRank('scores', 'chemistry'); //移除有序集中的一个或多个成员,忽略不存在的成员。返回删除的元素个数。 $ret = $redis->zRem('scores', 'chemistry', 'English'); //移除有序集中指定排名区间的所有成员。 $ret = $redis->zRemRangeByRank('scores', 0, 2); //移除有序集中指定分数值区间的所有成员。 $ret = $redis->zRemRangeByScore('scores', 80, 90); //对有序集中指定成员的分数值增加指定增量值。若为负数则做减法,若有序集不存在则先创建,若有序集中没有对应成员则先添加,最后再操作。 $ret = $redis->zIncrBy('scores', 2, 'Chinese'); //计算给定一个或多个有序集的交集,并将其存储到一个目的有序集中。结果集中某个成员的分数值是所有给定集下该成员分数值之和。 $ret = $redis->zinterstore('zset3', 'zset2', 'zset1'); //计算给定一个或多个有序集的并集,并将其存储到一个目的有序集中。结果集中某个成员的分数值是所有给定集下该成员分数值之和。 $ret = $redis->zunionstore('zset3', 'zset2', 'zset1');
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!