Same name in this branch
- 10 core/lib/Drupal/Core/Config/DatabaseStorage.php \Drupal\Core\Config\DatabaseStorage::deleteAll()
- 10 core/lib/Drupal/Core/KeyValueStore/DatabaseStorage.php \Drupal\Core\KeyValueStore\DatabaseStorage::deleteAll()
Same name and namespace in other branches
- 8.9.x core/lib/Drupal/Core/Config/DatabaseStorage.php \Drupal\Core\Config\DatabaseStorage::deleteAll()
- 9 core/lib/Drupal/Core/Config/DatabaseStorage.php \Drupal\Core\Config\DatabaseStorage::deleteAll()
Deletes configuration objects whose names start with a given prefix.
Given the following configuration object names:
- node.type.article
- node.type.page
Passing the prefix 'node.type.' will delete the above configuration objects.
Parameters
string $prefix: (optional) The prefix to search for. If omitted, all configuration objects that exist will be deleted.
Return value
bool TRUE on success, FALSE otherwise.
Overrides StorageInterface::deleteAll
File
- core/
lib/ Drupal/ Core/ Config/ DatabaseStorage.php, line 301
Class
- DatabaseStorage
- Defines the Database storage.
Namespace
Drupal\Core\ConfigCode
public function deleteAll($prefix = '') {
try {
// @todo Remove the 'return' option in Drupal 11.
// @see https://www.drupal.org/project/drupal/issues/3256524
$options = [
'return' => Database::RETURN_AFFECTED,
] + $this->options;
return (bool) $this->connection
->delete($this->table, $options)
->condition('name', $prefix . '%', 'LIKE')
->condition('collection', $this->collection)
->execute();
} catch (\Exception $e) {
if ($this->connection
->schema()
->tableExists($this->table)) {
throw $e;
}
// If we attempt a delete without actually having the table available,
// return false so the caller can handle it.
return FALSE;
}
}