hiredis php,PHP extension for Redis based on Hiredis

Phpiredis

68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f6e726b2f7068706972656469732e7376673f7374796c653d666c61742d737175617265

68747470733a2f2f696d672e736869656c64732e696f2f7472617669732f6e726b2f7068706972656469732e7376673f7374796c653d666c61742d737175617265

Phpiredis is an extension for PHP 5.x to 8.x based on hiredis

that provides a simple and efficient client for Redis and a fast incremental parser / serializer for

the RESP protocol.

Installation

Building and using this extension requires hiredis (>=0.14, >=1.0) to be installed on the system.

hiredis is usually available in the repositories of most Linux distributions, alternatively it is

possible to build it by fetching the code from its repository.

git clone https://github.com/nrk/phpiredis.git

cd phpiredis

phpize && ./configure --enable-phpiredis

make && make install

When the configuration script is unable to locate hiredis on your system, you can specify in which

directory it can be found using --with-hiredis-dir= (e.g. --with-hiredis-dir=/usr/local).

Phpiredis provides a basic test suite that can be launched with make test. Tests require a running

instance of redis-server listening on 127.0.0.1:6379 but make sure that your server does not

hold data you are interested: you could end up losing everything stored on it!

If you notice a failing test or a bug, you can contribute by opening a pull request on GitHub or

simply file a bug on our issue tracker.

Usage

Connecting to Redis is as simple as calling the phpiredis_connect() function with a server address

as the first parameter and an optional port number when the server is listening to a different port

than the default 6379:

$redis = phpiredis_connect('127.0.0.1', 6379); // normal connection

$redis = phpiredis_pconnect('127.0.0.1', 6379); // persistent connection

Alternatively you can connect to redis using UNIX domain socket connections.

$redis = phpiredis_connect('/tmp/redis.sock'); // normal connection

$redis = phpiredis_pconnect('/tmp/redis.sock'); // persistent connection

Once the connection is established, you can send commands to Redis using phpiredis_command_bs() or

pipeline them using phpiredis_multi_command_bs():

$response = phpiredis_command_bs($redis, array('DEL', 'test'));

$response = phpiredis_multi_command_bs($redis, array(

array('SET', 'test', '1'),

array('GET', 'test'),

));

The _bs suffix indicates that these functions can handle binary key names or values by using the

unified Redis protocol available since Redis >= 1.2.

Commands can still be sent using the old and deprecated inline protocol using phpiredis_command()

and phpiredis_multi_command() (note the lack of the _bs suffix) but it's highly discouraged and

these functions will be removed in future versions of phpiredis.

$response = phpiredis_command($redis, 'DEL test');

$response = phpiredis_multi_command($redis, array(

'SET test 1',

'GET test',

));

Contributing

Any kind of contribution is extremely welcome! Just fork the project on GitHub, work on new features

or bug fixes using feature branches and open pull-requests

with concise but complete descriptions of your changes. If you are unsure about a proposal, you can

just open an issue to discuss it before writing actual code.

Authors

Daniele Alessandri (current maintainer)

Sebastian Waisbrot (original developer)

License

The code for phpiredis is distributed under the terms of the BSD license (see LICENSE).

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值