示例#1
0
 /**
  * Deletes a specified member from the ordered set.
  *
  * @param string $key
  * @param string|array $members
  *
  * @return int Number of deleted values
  * @link http://redis.io/commands/zrem
  * @example
  * <pre>
  * $redis->zAdd('z', 1, 'v2', 2, 'v2', 3, 'v3', 4, 'v4' ); // int(2)
  * $redis->zRem('z', array('v2', 'v3')); // int(2)
  * var_dump( $redis->zRange('z', 0, -1) );
  * //// Output:
  * // array(2) {
  * // [0]=> string(2) "v1"
  * // [1]=> string(2) "v4"
  * // }
  * </pre>
  */
 public function zRem($key, $members)
 {
     try {
         return $this->client->zRem($key, $members);
     } catch (Exception $e) {
         return $this->handleException($e, __FUNCTION__, func_get_args());
     }
 }
示例#2
0
 public function zRem($key, $member1, $member2 = null, $memberN = null)
 {
     $args = func_get_args();
     if (count($args) > 2) {
         $this->signalError('Call to zRem() with more than 2 arguments.');
         // shift off key
         array_shift($args);
         return $this->redis->zRem($key, $args);
     }
     return $this->redis->zRem($key, $member1);
 }
示例#3
0
 /**
  * Test removing members from a sorted set
  */
 public function testZrem()
 {
     $this->redis->del('testZrem');
     $this->assertEquals(1, $this->redis->zadd('testZrem', 1, 'one'));
     $this->assertEquals(1, $this->redis->zadd('testZrem', 2, 'two'));
     $this->assertEquals(1, $this->redis->zadd('testZrem', 3, 'three'));
     $this->assertEquals(0, $this->redis->zrem('testZrem', array('zero')));
     $this->assertEquals(2, $this->redis->zrem('testZrem', array('one', 'two')));
     $this->assertEquals(array('three' => 3), $this->redis->zrange('testZrem', 0, -1, true));
     $this->assertEquals(1, $this->redis->zadd('testZrem1', 1, 'one'));
     $this->assertEquals(1, $this->redis->zadd('testZrem1', 2, 'two'));
     $this->assertEquals(1, $this->redis->zadd('testZrem1', 3, 'three'));
     $removed = $this->redis->zRem('testZrem1', array('one', 'three'));
     $this->assertInternalType('int', $removed);
     $this->assertEquals(2, $removed);
     $this->assertEquals(1, $this->redis->zCard('testZrem1'));
     $this->assertEquals(2, $this->redis->zScore('testZrem1', 'two'));
     $this->assertEquals(1, $this->redis->del('testZrem1'));
 }
示例#4
0
 /**
  * Deletes a specified member from the ordered set.
  *
  * @param string $key
  * @param string|array $members
  *
  * @return int Number of deleted values
  * @link http://redis.io/commands/zrem
  * @example
  * <pre>
  * $redis->zAdd('z', 1, 'v2', 2, 'v2', 3, 'v3', 4, 'v4' ); // int(2)
  * $redis->zRem('z', array('v2', 'v3')); // int(2)
  * var_dump( $redis->zRange('z', 0, -1) );
  * //// Output:
  * // array(2) {
  * // [0]=> string(2) "v1"
  * // [1]=> string(2) "v4"
  * // }
  * </pre>
  */
 public function zRem($key, $members)
 {
     $this->appendToLog('ZREM ' . $key . ' ' . $this->keysToString($members));
     return $this->client->zRem($key, $members);
 }