https://github.com/mkorkmaz/redislabs-rejson
Redislabs RedisJson aka ReJson Client for PHP (PHP 8.1+)
https://github.com/mkorkmaz/redislabs-rejson
redisjson redisjson-php redislab-redisjson rejson-php
Last synced: 6 months ago
JSON representation
Redislabs RedisJson aka ReJson Client for PHP (PHP 8.1+)
- Host: GitHub
- URL: https://github.com/mkorkmaz/redislabs-rejson
- Owner: mkorkmaz
- License: mit
- Created: 2018-12-07T21:57:07.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2023-11-03T05:04:07.000Z (over 2 years ago)
- Last Synced: 2026-01-12T16:36:31.747Z (6 months ago)
- Topics: redisjson, redisjson-php, redislab-redisjson, rejson-php
- Language: PHP
- Homepage: https://oss.redislabs.com/redisjson/
- Size: 108 KB
- Stars: 43
- Watchers: 4
- Forks: 7
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# RedisJSON-PHP: Redislabs RedisJSON aka ReJson Version 2 Client for PHP
RedisJSON-PHP provides a client for Redislabs' ReJSON Module for PHP. This library supports both widely used redis clients ([PECL Redis Extension](https://github.com/phpredis/phpredis/#readme) and [Predis](https://github.com/nrk/predis)).
[](https://travis-ci.com/mkorkmaz/redislabs-rejson) [](https://coveralls.io/github/mkorkmaz/redislabs-rejson?branch=master) [](https://scrutinizer-ci.com/g/mkorkmaz/redislabs-rejson/?branch=master) [](https://packagist.org/packages/mkorkmaz/redislabs-rejson) [](https://packagist.org/packages/mkorkmaz/redislabs-rejson) [](https://packagist.org/packages/mkorkmaz/redislabs-rejson) [](https://packagist.org/packages/mkorkmaz/redislabs-rejson)
## About RedisJSON
"RedisJSON is a Redis module that implements ECMA-404 The JSON Data Interchange Standard as a native data type. It allows storing, updating and fetching JSON values from Redis keys (documents)".
[More info about RedisJSON](https://oss.redislabs.com/redisjson/).
## RedisJSON-PHP Interface
Commanda are named after lowercase version of the original RedisJSON commands.
```php
connect('127.0.0.1');
$reJSON = ReJSON::createWithPhpRedis($redisClient);
```
##### Example for Predis
```php
set('test', '.', ['foo'=>'bar'], 'NX');
$redisJson->set('test', '.baz', 'qux');
$redisJson->set('test', '.baz', 'quux', 'XX');
$redisJson->set('test2', '.', ['foo2'=>'bar2']);
$baz = $redisJson->get('test', '.baz');
var_dump($baz);
// Prints string(4) "quux"
$array = $redisJson->get('test', '.');
var_dump($array);
/*
Prints result as an array instead of an object
array(2) {
["foo"]=>
string(3) "bar"
["baz"]=>
string(4) "quux"
}
*/
$array = $redisJson->mget('test', 'test2', '.');
var_dump($array);
/*
Prints result as an associative array instead of an object
array(2) {
["test"]=>
array(2) {
["foo"]=>
string(3) "bar"
["baz"]=>
string(4) "quux"
}
["test2"]=>
array(1) {
["foo2"]=>
string(3) "bar2"
}
}
*/
```
## Test and Development
You can use Docker Image provided by Redislabs.
```bash
docker run -p 6379:6379 redislabs/rejson:2.0.4
```