Neos\Cache\Backend\TransientMemoryBackend::findIdentifiersByTag PHP Method

findIdentifiersByTag() public method

Finds and returns all cache entry identifiers which are tagged by the specified tag.
public findIdentifiersByTag ( string $tag ) : array
$tag string The tag to search for
return array An array with identifiers of all matching entries. An empty array if no entries matched
    public function findIdentifiersByTag($tag)
    {
        if (isset($this->tagsAndEntries[$tag])) {
            return array_keys($this->tagsAndEntries[$tag]);
        } else {
            return [];
        }
    }

Usage Example

 /**
  * @test
  */
 public function findIdentifiersByTagFindsCacheEntriesWithSpecifiedTag()
 {
     $cache = $this->createMock(FrontendInterface::class);
     $backend = new TransientMemoryBackend($this->getEnvironmentConfiguration());
     $backend->setCache($cache);
     $data = 'Some data';
     $entryIdentifier = 'MyIdentifier';
     $backend->set($entryIdentifier, $data, ['UnitTestTag%tag1', 'UnitTestTag%tag2']);
     $retrieved = $backend->findIdentifiersByTag('UnitTestTag%tag1');
     $this->assertEquals($entryIdentifier, $retrieved[0]);
     $retrieved = $backend->findIdentifiersByTag('UnitTestTag%tag2');
     $this->assertEquals($entryIdentifier, $retrieved[0]);
 }