mingalevme / predis
There is no license information available for the latest version (dev-master) of this package.
Extended version of predis/predis — added support for pseudo-unique lists (based on ordered set)
dev-master
2017-09-29 12:56 UTC
Requires
- predis/predis: ~1.0
Requires (Dev)
- phpunit/phpunit: ~4.8
This package is auto-updated.
Last update: 2024-10-08 02:00:23 UTC
README
Extended version of predis/predis — added support for pseudo-unique lists (based on ordered set)
Available methods:
- zrpush($key, $value1, $value2 = null, .., $valueN = null): Insert all the specified values at the tail of the list stored at key.
- zlpush($key, $value1, $value2 = null, .., $valueN = null): Insert all the specified values at the head of the list stored at key.
- zlpop($key): Removes and returns the first element of the list stored at key.
- zrpop($key): Removes and returns the last element of the list stored at key.
Example
$client = new \Mingalevme\Predis\Client(); $client->del('queue'); $client->zrpush('queue', '1'); $client->zrpush('queue', '2'); $client->zrpush('queue', '3'); echo "\n\nStep 1\n"; print_r($client->zrange('queue', 0, -1)); $client->zrpush('queue', '1'); $client->zrpush('queue', '2'); $client->zrpush('queue', '3'); echo "\n\nStep 2\n"; print_r($client->zrange('queue', 0, -1)); $client->zlpush('queue', '-1'); $client->zlpush('queue', '-2'); $client->zlpush('queue', '-3'); echo "\n\nStep 3\n"; print_r($client->zrange('queue', 0, -1)); echo "\n\nStep 4\n"; $el = $client->zrpop('queue'); print_r($el); echo "\n\nStep 5\n"; $el = $client->zlpop('queue'); print_r($el); echo "\n\nStep 6\n"; while ($el = $client->zlpop('queue')) { echo "\nvalue: {$el}\n"; echo "list: "; print_r($client->zrange('queue', 0, -1)); }
Output
Step 1
Array
(
[0] => 1
[1] => 2
[2] => 3
)
Step 2
Array
(
[0] => 1
[1] => 2
[2] => 3
)
Step 3
Array
(
[0] => -3
[1] => -2
[2] => -1
[3] => 1
[4] => 2
[5] => 3
)
Step 4
3
Step 5
-3
Step 6
value: -2
list: Array
(
[0] => -1
[1] => 1
[2] => 2
)
value: -1
list: Array
(
[0] => 1
[1] => 2
)
value: 1
list: Array
(
[0] => 2
)
value: 2
list: Array
(
)