当前位置: 首页>>代码示例>>PHP>>正文


PHP Redis::sAdd方法代码示例

本文整理汇总了PHP中Redis::sAdd方法的典型用法代码示例。如果您正苦于以下问题:PHP Redis::sAdd方法的具体用法?PHP Redis::sAdd怎么用?PHP Redis::sAdd使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Redis的用法示例。


在下文中一共展示了Redis::sAdd方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: it_can_sadd

 public function it_can_sadd()
 {
     $this->redis->sAdd('test', 'test')->shouldBeCalled();
     $this->sAdd('test', ['test']);
     $this->redis->sAdd('test', 'test')->willThrow(new \RedisException());
     $this->shouldThrow(DriverException::class)->during('sAdd', ['test', ['test']]);
 }
开发者ID:mgdigital,项目名称:busque,代码行数:7,代码来源:PHPRedisAdapterSpec.php

示例2: gauge

 /**
  * @inheritdoc
  */
 public function gauge($bucket, $value)
 {
     $time = $this->syncedTime();
     $granularities = $this->getGranularities();
     foreach ($granularities as $granularity => $settings) {
         $key = $this->getKey($bucket, 'gauges', $granularity, $settings, $time);
         $field = $this->getField($settings, $time);
         $this->redis->hSet($key, $field, $value);
         $this->redis->expireAt($key, $time + $settings['ttl']);
     }
     $this->redis->sAdd('buckets', $bucket);
     $this->redis->sAdd(sprintf('types:%s', $bucket), 'gauges');
 }
开发者ID:fieg,项目名称:statistico,代码行数:16,代码来源:RedisDriver.php

示例3: set

 /**
  * Saves data in the cache.
  *
  * @param string $entryIdentifier An identifier for this specific cache entry
  * @param string $data The data to be stored
  * @param array $tags Tags to associate with this cache entry. If the backend does not support tags, this option can be ignored.
  * @param integer $lifetime Lifetime of this cache entry in seconds. If NULL is specified, the default lifetime is used. "0" means unlimited lifetime.
  * @throws \RuntimeException
  * @return void
  * @api
  */
 public function set($entryIdentifier, $data, array $tags = [], $lifetime = null)
 {
     if ($this->isFrozen()) {
         throw new \RuntimeException(sprintf('Cannot add or modify cache entry because the backend of cache "%s" is frozen.', $this->cacheIdentifier), 1323344192);
     }
     if ($lifetime === null) {
         $lifetime = $this->defaultLifetime;
     }
     $setOptions = [];
     if ($lifetime > 0) {
         $setOptions['ex'] = $lifetime;
     }
     $this->redis->multi();
     $result = $this->redis->set($this->buildKey('entry:' . $entryIdentifier), $this->compress($data), $setOptions);
     if (!$result instanceof \Redis) {
         $this->verifyRedisVersionIsSupported();
     }
     $this->redis->lRem($this->buildKey('entries'), $entryIdentifier, 0);
     $this->redis->rPush($this->buildKey('entries'), $entryIdentifier);
     foreach ($tags as $tag) {
         $this->redis->sAdd($this->buildKey('tag:' . $tag), $entryIdentifier);
         $this->redis->sAdd($this->buildKey('tags:' . $entryIdentifier), $tag);
     }
     $this->redis->exec();
 }
开发者ID:neos,项目名称:flow-development-collection,代码行数:36,代码来源:RedisBackend.php

示例4: testsGetMembers

 public function testsGetMembers()
 {
     $this->redis->delete('set');
     $this->redis->sAdd('set', 'val');
     $this->redis->sAdd('set', 'val2');
     $this->redis->sAdd('set', 'val3');
     $array = array('val', 'val2', 'val3');
     $this->assertEquals($array, $this->redis->sGetMembers('set'));
 }
开发者ID:hieutrieu,项目名称:phpredis,代码行数:9,代码来源:TestRedis.php

示例5: addLink

 /**
  * @param $siteUrl
  * @param $link
  * @param array $data
  */
 public function addLink($siteUrl, $link, array $data)
 {
     if (!$this->siteUrl) {
         $this->siteUrl = $siteUrl;
     }
     $data['link'] = $link;
     $this->redis->sAdd($this->getSiteKey($siteUrl), $link);
     $this->redis->hMset($this->getPageKey($siteUrl, $link), $data);
 }
开发者ID:vedebel,项目名称:sitemap,代码行数:14,代码来源:RedisLinksStorage.php

示例6: save

 /**
  * Save cache.
  *
  * @param string $id   Cache ID
  * @param mixed  $data Data to save
  * @param int    $ttl  Time to live in seconds
  * @param bool   $raw  Whether to store the raw value (unused)
  *
  * @return bool TRUE on success, FALSE on failure
  */
 public function save($id, $data, $ttl = 60, $raw = false)
 {
     if (is_array($data) or is_object($data)) {
         if (!$this->_redis->sIsMember('_ci_redis_serialized', $id) && !$this->_redis->sAdd('_ci_redis_serialized', $id)) {
             return false;
         }
         isset($this->_serialized[$id]) or $this->_serialized[$id] = true;
         $data = serialize($data);
     } elseif (isset($this->_serialized[$id])) {
         $this->_serialized[$id] = null;
         $this->_redis->sRemove('_ci_redis_serialized', $id);
     }
     return $this->_redis->set($id, $data, $ttl);
 }
开发者ID:recca0120,项目名称:laraigniter,代码行数:24,代码来源:Cache_redis.php

示例7: hsave

 /**
  * hSave cache
  *
  * @param	string	$id	Cache ID
  * @param	mixed	$data	Data to save
  * @param	int	$ttl	Time to live in seconds
  * @param	bool	$raw	Whether to store the raw value (unused)
  * @return	bool	TRUE on success, FALSE on failure
  */
 public function hsave($id, $key, $data)
 {
     if (is_array($data) or is_object($data)) {
         if (!$this->_redis->sIsMember('_ci_redis_serialized', $id) && !$this->_redis->sAdd('_ci_redis_serialized', $id)) {
             return FALSE;
         }
         isset($this->_serialized[$id]) or $this->_serialized[$id] = TRUE;
         $data = base64_encode(serialize($data));
     } elseif (isset($this->_serialized[$id])) {
         $this->_serialized[$id] = NULL;
         $this->_redis->sRemove('_ci_redis_serialized', $id);
     }
     return $this->_redis->hSet($id, $key, $data);
 }
开发者ID:KodeStar,项目名称:pro-api,代码行数:23,代码来源:Cache_redis.php

示例8: register

 /**
  * @param string $key
  * @param int $number
  * @param int $ttl
  * @return int
  */
 public function register($key, $number = -1, $ttl = 0)
 {
     Assertion::notNull(self::$redis, "Redis connection hasn't been set");
     Assertion::string($key, "Number key must be a string");
     Assertion::notEq($key, "", "Number key must be a non empty string");
     Assertion::integer($number, "Temporal numbers must be integers");
     Assertion::notEq($number, 0, "Temporal numbers must be integers different from zero");
     Assertion::integer($ttl, "Time to live (ttl) must be an integer");
     Assertion::true($ttl >= 0, "Time to live (ttl) must be strictly greater than zero");
     $key = $this->identifier . "::" . $key;
     self::$redis->sAdd($this->identifier, $key);
     $ttl == 0 ? self::$redis->set($key, $number) : self::$redis->set($key, $number, $ttl);
     return $this->getCurrentNumber();
 }
开发者ID:3nr1c,项目名称:temporal,代码行数:20,代码来源:Temporal.php

示例9: save

 /**
  * Save cache
  *
  * @param	string	$id	Cache ID
  * @param	mixed	$data	Data to save
  * @param	int	$ttl	Time to live in seconds
  * @param	bool	$raw	Whether to store the raw value (unused)
  * @return	bool	TRUE on success, FALSE on failure
  */
 public function save($id, $data, $ttl = 60, $raw = FALSE)
 {
     if (is_array($data) or is_object($data)) {
         if (!$this->_redis->sIsMember('_ci_redis_serialized', $id) && !$this->_redis->sAdd('_ci_redis_serialized', $id)) {
             return FALSE;
         }
         isset($this->_serialized[$id]) or $this->_serialized[$id] = TRUE;
         $data = serialize($data);
     } elseif (isset($this->_serialized[$id])) {
         $this->_serialized[$id] = NULL;
         $this->_redis->sRemove('_ci_redis_serialized', $id);
     }
     return $this->_redis->set($id, $data, $ttl);
 }
开发者ID:dhamodhar,项目名称:mysmartportal,代码行数:23,代码来源:Cache_redis.php

示例10: save

 /**
  * Save cache
  *
  * @param	string	$id	Cache ID
  * @param	mixed	$data	Data to save
  * @param	int	$ttl	Time to live in seconds
  * @param	bool	$raw	Whether to store the raw value (unused)
  * @return	bool	TRUE on success, FALSE on failure
  */
 public function save($id, $data, $ttl = 60, $raw = FALSE)
 {
     //        //Tim
     //        if(!$this->is_supported())
     //        {
     //            return false;
     //        }
     if (is_array($data) or is_object($data)) {
         if (!$this->_redis->sIsMember('_ci_redis_serialized', $id) && !$this->_redis->sAdd('_ci_redis_serialized', $id)) {
             return FALSE;
         }
         isset($this->_serialized[$id]) or $this->_serialized[$id] = TRUE;
         $data = serialize($data);
     } elseif (isset($this->_serialized[$id])) {
         $this->_serialized[$id] = NULL;
         $this->_redis->sRemove('_ci_redis_serialized', $id);
     }
     return $ttl ? $this->_redis->setex($id, $ttl, $data) : $this->_redis->set($id, $data);
 }
开发者ID:TimHuangcheng,项目名称:CI,代码行数:28,代码来源:Cache_redis.php

示例11: set

 /**
  * Saves data in the cache.
  *
  * @param string $entryIdentifier An identifier for this specific cache entry
  * @param string $data The data to be stored
  * @param array $tags Tags to associate with this cache entry. If the backend does not support tags, this option can be ignored.
  * @param integer $lifetime Lifetime of this cache entry in seconds. If NULL is specified, the default lifetime is used. "0" means unlimited lifetime.
  * @throws \RuntimeException
  * @return void
  * @api
  */
 public function set($entryIdentifier, $data, array $tags = array(), $lifetime = NULL)
 {
     if ($this->isFrozen()) {
         throw new \RuntimeException(sprintf('Cannot add or modify cache entry because the backend of cache "%s" is frozen.', $this->cacheIdentifier), 1323344192);
     }
     if ($lifetime === NULL) {
         $lifetime = $this->defaultLifetime;
     }
     $setOptions = array();
     if ($lifetime > 0) {
         $setOptions['ex'] = $lifetime;
     }
     $this->redis->multi();
     $this->redis->set($this->buildKey('entry:' . $entryIdentifier), $data, $setOptions);
     $this->redis->rPush($this->buildKey('entries'), $entryIdentifier);
     foreach ($tags as $tag) {
         $this->redis->sAdd($this->buildKey('tag:' . $tag), $entryIdentifier);
         $this->redis->sAdd($this->buildKey('tags:' . $entryIdentifier), $tag);
     }
     $this->redis->exec();
 }
开发者ID:sokunthearith,项目名称:Intern-Project-Week-2,代码行数:32,代码来源:RedisBackend.php

示例12: array

$redis->connect('127.0.0.1');
$redis->select(2);
// HSET
for ($i = 0; $i <= rand(1000, 10000); $i++) {
    $incr = $redis->incr('test:incr:hset');
    $data = array();
    for ($j = 0; $j <= rand(10, 500); $j++) {
        $data['field' . $j] = md5($j);
    }
    $redis->hMset('test:' . $incr . ':hset', $data);
}
// SET
for ($i = 0; $i <= rand(1000, 10000); $i++) {
    $incr = $redis->incr('test:incr:set');
    for ($j = 0; $j <= rand(10, 100); $j++) {
        $redis->sAdd('test:' . $incr . ':set', $j);
    }
}
// LIST
for ($i = 0; $i <= rand(1000, 10000); $i++) {
    $incr = $redis->incr('test:incr:list');
    for ($j = 0; $j <= rand(10, 100); $j++) {
        $redis->rPush('test:' . $incr . ':list', $j);
    }
}
// STRING
for ($i = 0; $i <= rand(1000, 10000); $i++) {
    $incr = $redis->incr('test:incr:string');
    for ($j = 0; $j <= rand(10, 100); $j++) {
        $redis->set('test:' . $incr . ':string', $j);
    }
开发者ID:xingcuntian,项目名称:readmin,代码行数:31,代码来源:create-dump-keys.php

示例13: array

 /**
  * Update manufacture
  * @param array $data - associative array with data to store
  * @return boolean
  */
 function update_country($id, $data)
 {
     $query = $this->db->get_where('countries', array('ID' => $id));
     $short_name = $query->row()->short_name;
     $start_words_arr = explode("\n", $this->input->post('start_words'));
     $error = false;
     $this->db->query('BEGIN;SAVEPOINT spcountryUPD;');
     $this->db->where('ID', $id);
     $this->db->update('countries', $data);
     $report = array();
     $report['error'] = $this->db->_error_number();
     $report['message'] = $this->db->_error_message();
     if ($report['error'] == '') {
         if (isset($start_words_arr)) {
             $new_keys_insert = array();
             foreach ($start_words_arr as $row) {
                 if ($row == "") {
                     continue;
                 }
                 $new_keys_insert[] = trim($row);
             }
             if (isset($new_keys_insert) and count($new_keys_insert) > 0) {
                 $redis = new Redis();
                 $redis->connect('127.0.0.1');
                 foreach ($new_keys_insert as $insert) {
                     $redis->sAdd("keys_status:{$short_name}:1", strtolower($insert));
                 }
                 $redis->close();
             }
         }
     } else {
         $error = true;
     }
     if ($error) {
         $this->db->query('ROLLBACK TO SAVEPOINT spcountryUPD;');
     } else {
         $this->db->query('COMMIT;');
     }
     return !$error;
 }
开发者ID:hxhxd,项目名称:ggkprun,代码行数:45,代码来源:countries_model.php

示例14: checkSerializer

 private function checkSerializer($mode)
 {
     $this->redis->delete('key');
     $this->assertTrue($this->redis->getOption(Redis::OPT_SERIALIZER) === Redis::SERIALIZER_NONE);
     // default
     $this->assertTrue($this->redis->setOption(Redis::OPT_SERIALIZER, $mode) === TRUE);
     // set ok
     $this->assertTrue($this->redis->getOption(Redis::OPT_SERIALIZER) === $mode);
     // get ok
     // lPush, rPush
     $a = array('hello world', 42, TRUE, array('<tag>' => 1729));
     $this->redis->delete('key');
     $this->redis->lPush('key', $a[0]);
     $this->redis->rPush('key', $a[1]);
     $this->redis->rPush('key', $a[2]);
     $this->redis->rPush('key', $a[3]);
     // lGetRange
     $this->assertTrue($a === $this->redis->lGetRange('key', 0, -1));
     // lGet
     $this->assertTrue($a[0] === $this->redis->lGet('key', 0));
     $this->assertTrue($a[1] === $this->redis->lGet('key', 1));
     $this->assertTrue($a[2] === $this->redis->lGet('key', 2));
     $this->assertTrue($a[3] === $this->redis->lGet('key', 3));
     // lRemove
     $this->assertTrue($this->redis->lRemove('key', $a[3]) === 1);
     $this->assertTrue(array_slice($a, 0, 3) === $this->redis->lGetRange('key', 0, -1));
     // lSet
     $a[0] = array('k' => 'v');
     // update
     $this->assertTrue(TRUE === $this->redis->lSet('key', 0, $a[0]));
     $this->assertTrue($a[0] === $this->redis->lGet('key', 0));
     // lInsert
     $this->assertTrue($this->redis->lInsert('key', Redis::BEFORE, $a[0], array(1, 2, 3)) === 4);
     $this->assertTrue($this->redis->lInsert('key', Redis::AFTER, $a[0], array(4, 5, 6)) === 5);
     $a = array(array(1, 2, 3), $a[0], array(4, 5, 6), $a[1], $a[2]);
     $this->assertTrue($a === $this->redis->lGetRange('key', 0, -1));
     // sAdd
     $this->redis->delete('key');
     $s = array(1, 'a', array(1, 2, 3), array('k' => 'v'));
     $this->assertTrue(1 === $this->redis->sAdd('key', $s[0]));
     $this->assertTrue(1 === $this->redis->sAdd('key', $s[1]));
     $this->assertTrue(1 === $this->redis->sAdd('key', $s[2]));
     $this->assertTrue(1 === $this->redis->sAdd('key', $s[3]));
     // variadic sAdd
     $this->redis->delete('k');
     $this->assertTrue(3 === $this->redis->sAdd('k', 'a', 'b', 'c'));
     $this->assertTrue(1 === $this->redis->sAdd('k', 'a', 'b', 'c', 'd'));
     // sRemove
     $this->assertTrue(1 === $this->redis->sRemove('key', $s[3]));
     $this->assertTrue(0 === $this->redis->sRemove('key', $s[3]));
     // variadic
     $this->redis->delete('k');
     $this->redis->sAdd('k', 'a', 'b', 'c', 'd');
     $this->assertTrue(2 === $this->redis->sRem('k', 'a', 'd'));
     $this->assertTrue(2 === $this->redis->sRem('k', 'b', 'c', 'e'));
     $this->assertTrue(FALSE === $this->redis->exists('k'));
     // sContains
     $this->assertTrue(TRUE === $this->redis->sContains('key', $s[0]));
     $this->assertTrue(TRUE === $this->redis->sContains('key', $s[1]));
     $this->assertTrue(TRUE === $this->redis->sContains('key', $s[2]));
     $this->assertTrue(FALSE === $this->redis->sContains('key', $s[3]));
     unset($s[3]);
     // sMove
     $this->redis->delete('tmp');
     $this->redis->sMove('key', 'tmp', $s[0]);
     $this->assertTrue(FALSE === $this->redis->sContains('key', $s[0]));
     $this->assertTrue(TRUE === $this->redis->sContains('tmp', $s[0]));
     unset($s[0]);
     // sorted sets
     $z = array('z0', array('k' => 'v'), FALSE, NULL);
     $this->redis->delete('key');
     // zAdd
     $this->assertTrue(1 === $this->redis->zAdd('key', 0, $z[0]));
     $this->assertTrue(1 === $this->redis->zAdd('key', 1, $z[1]));
     $this->assertTrue(1 === $this->redis->zAdd('key', 2, $z[2]));
     $this->assertTrue(1 === $this->redis->zAdd('key', 3, $z[3]));
     // zDelete
     $this->assertTrue(1 === $this->redis->zDelete('key', $z[3]));
     $this->assertTrue(0 === $this->redis->zDelete('key', $z[3]));
     unset($z[3]);
     // check that zDelete doesn't crash with a missing parameter (GitHub issue #102):
     $this->assertTrue(FALSE === @$this->redis->zDelete('key'));
     // variadic
     $this->redis->delete('k');
     $this->redis->zAdd('k', 0, 'a');
     $this->redis->zAdd('k', 1, 'b');
     $this->redis->zAdd('k', 2, 'c');
     $this->assertTrue(2 === $this->redis->zDelete('k', 'a', 'c'));
     $this->assertTrue(1.0 === $this->redis->zScore('k', 'b'));
     $this->assertTrue($this->redis->zRange('k', 0, -1, true) == array('b' => 1.0));
     // zRange
     $this->assertTrue($z === $this->redis->zRange('key', 0, -1));
     // zScore
     $this->assertTrue(0.0 === $this->redis->zScore('key', $z[0]));
     $this->assertTrue(1.0 === $this->redis->zScore('key', $z[1]));
     $this->assertTrue(2.0 === $this->redis->zScore('key', $z[2]));
     // zRank
     $this->assertTrue(0 === $this->redis->zRank('key', $z[0]));
     $this->assertTrue(1 === $this->redis->zRank('key', $z[1]));
     $this->assertTrue(2 === $this->redis->zRank('key', $z[2]));
//.........这里部分代码省略.........
开发者ID:stonegithubs,项目名称:phpredis,代码行数:101,代码来源:TestRedis.php

示例15: sAdd

 /**
  * Add a value to a set
  *
  * @param string $key
  * @param string $value
  */
 public function sAdd($key, $value)
 {
     $this->_redis->sAdd($key, $value);
 }
开发者ID:aladin1394,项目名称:CM,代码行数:10,代码来源:Client.php


注:本文中的Redis::sAdd方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。