Yii Caching Library - Redis Handler
This package provides the Redis handler and implements PSR-16 cache.
Requirements
- PHP 7.4 or higher.
Installation
The package could be installed with composer:
composer require yiisoft/cache-redis --prefer-dist
General usage
For more information about the client instance and connection configuration, see the documentation of the predis/predis package.
/**
* @var \Predis\ClientInterface $client Predis client instance to use.
*/
$cache = new \Yiisoft\Cache\Redis\RedisCache($client);
The package does not contain any additional functionality for interacting with the cache, except those defined in the PSR-16 interface.
$parameters = ['user_id' => 42];
$key = 'demo';
// try retrieving $data from cache
$data = $cache->get($key);
if ($data === null) {
// $data is not found in cache, calculate it from scratch
$data = calculateData($parameters);
// store $data in cache for an hour so that it can be retrieved next time
$cache->set($key, $data, 3600);
}
// $data is available here
In order to delete value you can use:
$cache->delete($key);
// Or all cache
$cache->clear();
To work with values in a more efficient manner, batch operations should be used:
getMultiple()
setMultiple()
deleteMultiple()
This package can be used as a cache handler for the Yii Caching Library.
Testing
Unit testing
The package is tested with PHPUnit. To run tests:
./vendor/bin/phpunit
Mutation testing
The package tests are checked with Infection mutation framework with Infection Static Analysis Plugin. To run it:
./vendor/bin/roave-infection-static-analysis-plugin
Static analysis
The code is statically analyzed with Psalm. To run static analysis:
./vendor/bin/psalm
License
The Yii Caching Library - Redis Handler is free software. It is released under the terms of the BSD License. Please see LICENSE
for more information.
Maintained by Yii Software.