redisent / redis
为普通开发者提供简单、直接的Redis接口。它旨在灵活并适应Redis协议的更改。
Requires
- php: >=5.3.0
This package is not auto-updated.
Last update: 2024-09-22 03:59:22 UTC
README
Redisent是为普通开发者提供的简单、直接的Redis数据结构存储接口。它旨在灵活并适应Redis协议的更改。
简介
如果你对Redis协议和PHP对象有所了解,那么你已经掌握了Redisent。Redisent将方法调用转换为它们的Redis协议等效方法,抽象出细节,并将返回值转换为PHP兼容格式。
功能
共享Redis API
Redisent的方法名称直接映射到它们的Redis命令对应项。完整的列表可以在命令参考中找到。
设置键
$redis->set('foo', 'bar') // SET foo bar
处理列表
$redis->lpush('particles', 'electron') // LPUSH particles electron $redis->lpush('particles', 'proton') // LPUSH particles proton $redis->lpush('particles', 'neutron') // LPUSH particles neutron $redis->llen('particles') // LLEN particles
管道
Redisent为对Redis执行命令的管道提供流畅的接口。
$redis->pipeline() ->set('X', 2) ->incr('X') ->incr('X') ->uncork(); // #=> array containing the responses of each command
快速开始
Redisent除了需要PHP 5.3及以后的版本之外没有其他依赖。要将它添加到项目中,只需将Redis.php文件放入项目结构中,实例化一个Redis实例,然后开始执行命令。
require_once 'redisent/Redis.php'; $redis = new redisent\Redis('redis://'); $redis->set('awesome', 'absolutely'); echo "Is Redisent awesome? ", $redis->get('awesome'), "\n";
来自Redis的任何错误都将封装在resident\RedisException
中并抛出。
管道
Redisent支持管道的流畅接口。通过在Redis实例上调用pipeline
方法开始管道,使用Redisent作为通常使用,然后调用uncork
方法。uncork
方法返回一个包含管道命令响应的数组。
示例
$redis = new Redisent\Redis(); $responses = $redis->pipeline() ->incr('X') ->incr('X') ->incr('X') ->incr('X') ->uncork(); print_r($responses);
如果键X不存在,第一次INCR将创建它并返回1,后续调用将增加1。调用uncork()
的返回值将是array(1,2,3,4)
,每个INCR命令的响应。
贡献
请提交拉取请求!特别欢迎功能/主题分支。单元测试使用SimpleTest编写,请在您的拉取请求中包含测试。要运行测试,运行sh setup.sh
脚本来进行设置,然后运行php tests/all_tests.php
来运行套件。
路线图
Redis已经变得非常功能丰富,Redisent落后于它。
- 发布/订阅
- 事务
关于
版权 © 2009-2012 Justin Poliey
许可证
根据ISC许可证许可。
版权(c)2009-2012 Justin Poliey justin@getglue.com
允许以任何目的使用、复制、修改和/或分发本软件,无论是否收费,前提是上述版权声明和本许可声明出现在所有副本中。
本软件按“原样”提供,作者放弃与该软件相关的所有保证,包括所有默示的适销性和适用性保证。在任何情况下,作者均不对任何特殊、直接、间接或后果性损害或任何由于使用、数据丢失或利润损失而产生的任何损害负责,无论此类损害是由于合同行为、疏忽或其他侵权行为引起的,无论与该软件的使用或性能是否有关。