Join 4,000+ others and never miss out on new tips, tutorials, and more.
Latest version:
pecl install openswoole-22.1.2 | composer require openswoole/core:22.1.5
Swoole async redis client is based on hiredis.
wget https://github.com/redis/hiredis/archive/v0.13.3.tar.gz
tar zxvf v0.13.3.tar.gz
cd hiredis-0.13.3/
make -j
sudo make install
sudo ldconfig
./configure --enable-async-redis
make clean
make -j
sudo make install
OpenSwoole\Redis::connect(string $host, int $port, callable $callback)
Alias: swoole_redis->connect(string $host, int $port, callable $callback)
Connect to the Redis server.
Example:
<?php
$client = new swoole_redis;
$client->connect('127.0.0.1', 6379, function (swoole_redis $client, $result) {
if ($result === false) {
echo "connect to redis server failed.\n"
return;
}
$client->set('key', 'swoole', function (swoole_redis $client, $result) {
var_dump($result);
});
});
OpenSwoole\Redis::on(string $event_name, callable $callback)
Alias: swoole_redis->on(string $event_name, callable $callback)
Register callback function based on event name: Close and Message, Receive.
Example:
<?php
$client = new swoole_redis;
$client->on('message', function (swoole_redis $client, $result) {
var_dump($result);
static $more = false;
if (!$more and $result[0] == 'message')
{
echo "subscribe new channel\n";
$client->subscribe('msg_1', 'msg_2');
$client->unsubscribe('msg_0');
$more = true;
}
});
$client->connect('127.0.0.1', 6379, function (swoole_redis $client, $result) {
echo "connect\n";
$client->subscribe('msg_0');
});
OpenSwoole\Redis::\_\_call(string $command, array $params)
Alias: swoole_redis->__call(string $command, array $params)
Execute redis client commands: http://redis.io/commands
Commands:
OpenSwoole\Redis::close()
Alias: swoole_redis->close()
Close the redis connection.