function DatabaseStorage::listAll

Same name and namespace in other branches
  1. 9 core/lib/Drupal/Core/Config/DatabaseStorage.php \Drupal\Core\Config\DatabaseStorage::listAll()
  2. 8.9.x core/lib/Drupal/Core/Config/DatabaseStorage.php \Drupal\Core\Config\DatabaseStorage::listAll()
  3. 10 core/lib/Drupal/Core/Config/DatabaseStorage.php \Drupal\Core\Config\DatabaseStorage::listAll()

Overrides StorageInterface::listAll

File

core/lib/Drupal/Core/Config/DatabaseStorage.php, line 269

Class

DatabaseStorage
Defines the Database storage.

Namespace

Drupal\Core\Config

Code

public function listAll($prefix = '') {
    try {
        $query = $this->connection
            ->select($this->table);
        $query->fields($this->table, [
            'name',
        ]);
        $query->condition('collection', $this->collection, '=');
        $query->condition('name', $prefix . '%', 'LIKE');
        $query->orderBy('collection')
            ->orderBy('name');
        return $query->execute()
            ->fetchCol();
    } catch (\Exception $e) {
        if ($this->connection
            ->schema()
            ->tableExists($this->table)) {
            throw $e;
        }
        // If we attempt a read without actually having the table available,
        // return an empty array so the caller can handle it.
        return [];
    }
}

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