function FileStorage::listAll

Same name in this branch
  1. 10 core/lib/Drupal/Component/PhpStorage/FileStorage.php \Drupal\Component\PhpStorage\FileStorage::listAll()
Same name and namespace in other branches
  1. 9 core/lib/Drupal/Core/Config/FileStorage.php \Drupal\Core\Config\FileStorage::listAll()
  2. 9 core/lib/Drupal/Component/PhpStorage/FileStorage.php \Drupal\Component\PhpStorage\FileStorage::listAll()
  3. 8.9.x core/lib/Drupal/Core/Config/FileStorage.php \Drupal\Core\Config\FileStorage::listAll()
  4. 8.9.x core/lib/Drupal/Component/PhpStorage/FileStorage.php \Drupal\Component\PhpStorage\FileStorage::listAll()
  5. 11.x core/lib/Drupal/Core/Config/FileStorage.php \Drupal\Core\Config\FileStorage::listAll()
  6. 11.x core/lib/Drupal/Component/PhpStorage/FileStorage.php \Drupal\Component\PhpStorage\FileStorage::listAll()

Overrides StorageInterface::listAll

1 call to FileStorage::listAll()
FileStorage::deleteAll in core/lib/Drupal/Core/Config/FileStorage.php
Deletes configuration objects whose names start with a given prefix.
1 method overrides FileStorage::listAll()
InstallStorage::listAll in core/lib/Drupal/Core/Config/InstallStorage.php
Gets configuration object names starting with a given prefix.

File

core/lib/Drupal/Core/Config/FileStorage.php, line 211

Class

FileStorage
Defines the file storage.

Namespace

Drupal\Core\Config

Code

public function listAll($prefix = '') {
    $dir = $this->getCollectionDirectory();
    if (!is_dir($dir)) {
        return [];
    }
    $extension = '.' . static::getFileExtension();
    // glob() directly calls into libc glob(), which is not aware of PHP stream
    // wrappers. Same for \GlobIterator (which additionally requires an absolute
    // realpath() on Windows).
    // @see https://github.com/mikey179/vfsStream/issues/2
    $files = scandir($dir);
    $names = [];
    $pattern = '/^' . preg_quote($prefix, '/') . '.*' . preg_quote($extension, '/') . '$/';
    foreach ($files as $file) {
        if ($file[0] !== '.' && preg_match($pattern, $file)) {
            $names[] = basename($file, $extension);
        }
    }
    return $names;
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.