22 lines
483 B
PHP
22 lines
483 B
PHP
<?php
|
|
|
|
namespace Ulmus\Cache;
|
|
|
|
use Psr\SimpleCache\CacheInterface;
|
|
|
|
trait CacheEventTrait
|
|
{
|
|
public function __construct(
|
|
protected CacheInterface $cache,
|
|
protected string $cacheKey,
|
|
) {}
|
|
|
|
public function purgeCache() : void
|
|
{
|
|
$keys = $this->cache->get($this->cacheKey);
|
|
|
|
if ( $keys && is_iterable($keys) ) {
|
|
$this->cache->deleteMultiple(array_map(fn($e) => sprintf("%s:%s:", $this->cacheKey, $e), $keys));
|
|
}
|
|
}
|
|
} |