webdcg/

redis

使用 PhpRedis C 扩展的 PHP Redis 客户端

0.14.0 2020-02-26 04:08 UTC

This package is auto-updated.

Last update: 2024-08-28 13:42:10 UTC


README

StyleCI Latest Version on Packagist Build Status Quality Score Total Downloads

使用 PhpRedis C 扩展的 OOP Redis 客户端

目录

  1. 安装
  2. 类和方法

安装

您可以通过 composer 安装此软件包

composer require webdcg/redis

类和方法

使用方法

$redis = new Webdcg\Redis\Redis;

位操作

// Count set bits in a string
$redis->bitCount('key');
$redis->bitField('key');
$redis->bitPos('key');
$redis->bitOp('key');
$redis->getBit('key');
$redis->setBit('key');

连接

$redis->connect('127.0.0.1', 6379);
$redis->open('127.0.0.1', 6379);
$redis->pconnect('127.0.0.1', 6379);
$redis->popen('127.0.0.1', 6379);
$redis->auth('secret');
$redis->select(1);
$redis->swapdb(0, 1);
$redis->close();
$redis->setOption(\Redis::OPT_PREFIX, 'redis:');
$redis->getOption(\Redis::OPT_PREFIX)
$redis->ping('pong');
$redis->echo('redis');

地理编码

$options = ['WITHDIST'];
$redis->geoAdd('Geocoding', -122.431, 37.773, 'San Francisco');
$redis->geoAdd('Geocoding', -73.935242, 40.730610, 'New York');
$redis->geoHash('Geocoding', 'San Francisco');
$redis->geoPos('Geocoding', 'San Francisco');
$redis->geoDist('Geocoding', 'San Francisco', 'New York');
$redis->geoRadius("Geocoding", -157.858, 21.306, 300, 'mi', $options);
$redis->geoRadiusByMember("Geocoding", 'San Francisco', 300, 'mi', $options);

哈希表

$redis->del('key');
$redis->delete('key');
$redis->unlink('key');

超日志记录

$redis->pfAdd('HyperLogLog', ['a', 'b', 'c']);
$redis->pfCount('HyperLogLog'); // 3
$redis->pfAdd('HyperLogLog2', ['b', 'd']);
$redis->pfMerge('HyperLogLogMerged', ['HyperLogLog', 'HyperLogLog2']);
$redis->pfCount('HyperLogLogMerged'); // 4 => a, b, c, d

检查

$redis->del('key');
$redis->delete('key');
$redis->unlink('key');

$redis->del('key');
$redis->delete('key');
$redis->unlink('key');

列表

$redis->del('key');
$redis->delete('key');
$redis->unlink('key');

发布/订阅

$redis->del('key');
$redis->delete('key');
$redis->unlink('key');

脚本

$redis->del('key');
$redis->delete('key');
$redis->unlink('key');

集合

$redis->del('key');
$redis->delete('key');
$redis->unlink('key');

有序集合

$redis->del('key');
$redis->delete('key');
$redis->unlink('key');

$redis->del('key');
$redis->delete('key');
$redis->unlink('key');

字符串

// Simple key -> value set
$redis->set('key', 'value');
// Will redirect, and actually make an SETEX call
$redis->set('key', 'value', 10);
// Will set the key, if it doesn't exist, with a ttl of 10 seconds
$redis->set('key:'.time(), 'value', ['nx', 'ex' => 10]);
// Will set a key, if it does exist, with a ttl of 1000 miliseconds
$redis->set('key', 'value', ['xx', 'px' => 1000]);
$redis->setEx('key', 10, 'value');

事务

$redis->del('key');
$redis->delete('key');
$redis->unlink('key');

测试

composer test

变更日志

请参阅CHANGELOG获取更多最近更改的信息。

贡献

请参阅CONTRIBUTING以获取详细信息。

安全性

如果您发现任何安全相关的问题,请通过rluna@webdcg.com发送电子邮件,而不是使用问题跟踪器。

鸣谢

许可协议

MIT 许可协议 (MIT)。请参阅许可文件以获取更多信息。

PHP 软件包模板

此软件包是使用PHP 软件包模板生成的。