<?php
//實例化redis
$redis = new Redis();
//連接
$redis ->connect( '127.0.0.1' , 6379);
//有序集合
//添加元素
echo $redis ->zadd( 'set' , 1, 'cat' ); echo '<br>' ;
echo $redis ->zadd( 'set' , 2, 'dog' ); echo '<br>' ;
echo $redis ->zadd( 'set' , 3, 'fish' ); echo '<br>' ;
echo $redis ->zadd( 'set' , 4, 'dog' ); echo '<br>' ;
echo $redis ->zadd( 'set' , 4, 'bird' ); echo '<br>' ;
//返回集合中的所有元素
print_r( $redis ->zrange( 'set' , 0, -1)); echo '<br>' ;
print_r( $redis ->zrange( 'set' , 0, -1, true)); echo '<br>' ;
//返回元素的score值
echo $redis ->zscore( 'set' , 'dog' ); echo '<br>' ;
//返回存儲的個數
echo $redis ->zcard( 'set' ); echo '<br>' ;
//刪除指定成員
$redis ->zrem( 'set' , 'cat' );
print_r( $redis ->zrange( 'set' , 0, -1)); echo '<br>' ;
//返回集合中介於min和max之間的值的個數
print_r( $redis ->zcount( 'set' , 3, 5)); echo '<br>' ;
//返回有序集合中score介於min和max之間的值
print_r( $redis ->zrangebyscore( 'set' , 3, 5)); echo '<br>' ;
print_r( $redis ->zrangebyscore( 'set' , 3, 5, [ 'withscores' =>true])); echo '<br>' ;
//返回集合中指定區間內所有的值
print_r( $redis ->zrevrange( 'set' , 1, 2)); echo '<br>' ;
print_r( $redis ->zrevrange( 'set' , 1, 2, true)); echo '<br>' ;
//有序集合中指定值的socre增加
echo $redis ->zscore( 'set' , 'dog' ); echo '<br>' ;
$redis ->zincrby( 'set' , 2, 'dog' );
echo $redis ->zscore( 'set' , 'dog' ); echo '<br>' ;
//移除score值介於min和max之間的元素
print_r( $redis ->zrange( 'set' , 0, -1, true)); echo '<br>' ;
print_r( $redis ->zremrangebyscore( 'set' , 3, 4)); echo '<br>' ;
print_r( $redis ->zrange( 'set' , 0, -1, true)); echo '<br>' ;
//結果
// 1
// 0
// 0
// 0
// 0
// Array ( [0] => cat [1] => fish [2] => bird [3] => dog )
// Array ( [cat] => 1 [fish] => 3 [bird] => 4 [dog] => 4 )
// 4
// 4
// Array ( [0] => fish [1] => bird [2] => dog )
// 3
// Array ( [0] => fish [1] => bird [2] => dog )
// Array ( [fish] => 3 [bird] => 4 [dog] => 4 )
// Array ( [0] => bird [1] => fish )
// Array ( [bird] => 4 [fish] => 3 )
// 4
// 6
// Array ( [fish] => 3 [bird] => 4 [dog] => 6 )
// 2
// Array ( [dog] => 6 )
|