function FileStorage::write
Same name in other branches
- 9 core/lib/Drupal/Core/Config/FileStorage.php \Drupal\Core\Config\FileStorage::write()
- 10 core/lib/Drupal/Core/Config/FileStorage.php \Drupal\Core\Config\FileStorage::write()
- 11.x core/lib/Drupal/Core/Config/FileStorage.php \Drupal\Core\Config\FileStorage::write()
Overrides StorageInterface::write
1 method overrides FileStorage::write()
- InstallStorage::write in core/
lib/ Drupal/ Core/ Config/ InstallStorage.php - Overrides Drupal\Core\Config\FileStorage::write().
File
-
core/
lib/ Drupal/ Core/ Config/ FileStorage.php, line 141
Class
- FileStorage
- Defines the file storage.
Namespace
Drupal\Core\ConfigCode
public function write($name, array $data) {
try {
$encoded_data = $this->encode($data);
} catch (InvalidDataTypeException $e) {
throw new StorageException("Invalid data type in config {$name}: {$e->getMessage()}");
}
$target = $this->getFilePath($name);
$status = @file_put_contents($target, $encoded_data);
if ($status === FALSE) {
// Try to make sure the directory exists and try writing again.
$this->ensureStorage();
$status = @file_put_contents($target, $encoded_data);
}
if ($status === FALSE) {
throw new StorageException('Failed to write configuration file: ' . $this->getFilePath($name));
}
else {
$this->getFileSystem()
->chmod($target);
}
$this->fileCache
->set($target, $data);
return TRUE;
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.