honklegion / psr16storage
Nette PSR16 storage adapter
v1.0.0
2026-03-06 21:53 UTC
Requires
- php: >=8.2 <8.6
- nette/caching: ^3.2
- psr/simple-cache: ^1.0|^3.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.75
- php-parallel-lint/php-parallel-lint: ^1.2
- phpstan/phpstan: ^2.0
- phpstan/phpstan-nette: ^2.0
- phpunit/phpunit: ^11.5
- roave/security-advisories: dev-latest
README
Nette cache Storage adapter backed by a PSR-16 cache implementation.
Installation
composer require honklegion/psr16storage
Requirements
- PHP
>=8.2 <8.6 nette/caching^3.2psr/simple-cache^1.0|^3.0
Usage
Use any PSR-16 cache and wrap it with Psr16Storage.
<?php declare(strict_types=1); use HonkLegion\Psr16Storage\Psr16Storage; use Nette\Caching\Cache; /** @var \Psr\SimpleCache\CacheInterface $psr16 */ $storage = new Psr16Storage($psr16); $cache = new Cache($storage); $cache->save('key', 'value', [ Cache::Expire => time() + 300, ]); $value = $cache->load('key');
Optional max TTL forwarded to PSR-16 backend:
$storage = new Psr16Storage($psr16, 3600); // max 1 hour
Notes and Limitations
Cache::Itemsdependency is not supported and throwsNette\NotSupportedException.Cache::TagsandCache::Priorityare not supported and throwNette\InvalidStateException.- Callback dependencies are supported and invalid entries are removed.
- Sliding expiration is supported.
Development
composer test
composer phpcs
composer phpstan
CI runs on PHP 8.2, 8.3, 8.4, and 8.5.