Removes all cache entries of this cache which are tagged by the specified tag.
public flushByTag ( string $tag ) : integer | ||
$tag | string | The tag the entries must have |
Результат | integer | The number of entries which have been affected by this flush |
/** * @test */ public function flushByTagRemovesCacheEntriesWithSpecifiedTag() { $cache = $this->createMock(FrontendInterface::class); $backend = new TransientMemoryBackend($this->getEnvironmentConfiguration()); $backend->setCache($cache); $data = 'some data' . microtime(); $backend->set('TransientMemoryBackendTest1', $data, ['UnitTestTag%test', 'UnitTestTag%boring']); $backend->set('TransientMemoryBackendTest2', $data, ['UnitTestTag%test', 'UnitTestTag%special']); $backend->set('TransientMemoryBackendTest3', $data, ['UnitTestTag%test']); $backend->flushByTag('UnitTestTag%special'); $this->assertTrue($backend->has('TransientMemoryBackendTest1'), 'TransientMemoryBackendTest1'); $this->assertFalse($backend->has('TransientMemoryBackendTest2'), 'TransientMemoryBackendTest2'); $this->assertTrue($backend->has('TransientMemoryBackendTest3'), 'TransientMemoryBackendTest3'); }