Download the PHP package skrip42/cachelayer-bundle without Composer
On this page you can find all versions of the php package skrip42/cachelayer-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download skrip42/cachelayer-bundle
More information about skrip42/cachelayer-bundle
Files in skrip42/cachelayer-bundle
Package cachelayer-bundle
Short Description Symfony cache layer bundle
License MIT
Homepage https://github.com/Skrip42/cachelayer-bundle
Informations about the package cachelayer-bundle
cachelayer-bundle
cache layer for services
install:
- run
composer require skrip42/cachelayer-bundle
base usage:
implement cache interface:
make cache service is public:
tagged target service as cachable:
add annotation to target service methods:
additional features:
cache chain
you can add multiple cache annotations, caches will be executed in the specified order
custom attribute
you can define additional attributes that will be passed to all cache methods
ignored parameters
you can specify parameters that will be ignored during caching
conditional execution
You can specify a condition under which cache will be executed
cache cleaner
You can specify the method for clearing the cache
if you want to clear the cache of another method (for example for setter method), you can add attribute with the method name and modify toy cache class like this:
cache actualize
You can specify the method for actualize the cache
conditional clear and actualize
You can specify a condition under which cache overide action
recache method
You can specify recache method thet will be called automatically after clearing the cache php /**
- @Cache(
- RedisCache::class,
- attribute = {
- "target" = "getData"
- }
- action = "clear",
- recache_method = "recacheData" // recacheData(...) will be called after cache clear
- )
*/
public function setData(...)
CacheManager and CacheAccessor
CacheAccessor allows you to direct control for cache of a specific service
To get CacheAccessor, use static CacheManager:
:warning: if you use no singleton service, you can get CacheAccessor only for last service instance;
CacheAccessor has the signature:
AdditionalCache
You can define cache without class method and work with it through the CacheManager
All versions of cachelayer-bundle with dependencies
doctrine/common Version ^2.7|^3.0
symfony/config Version ^4.2|^5.0
ocramius/proxy-manager Version ^2.0
symfony/http-kernel Version ^4.3|^5.0
symfony/dependency-injection Version ^4.1|^5.0