function FileSecurity::writeFile
Writes the contents to the file in the given directory.
Parameters
string $directory: The directory to write to.
string $filename: The file name.
string $contents: The file contents.
bool $force: TRUE if we should force the write over an existing file.
Return value
bool TRUE if writing the file was successful.
2 calls to FileSecurity::writeFile()
- FileSecurity::writeHtaccess in core/
lib/ Drupal/ Component/ FileSecurity/ FileSecurity.php  - Writes an .htaccess file in the given directory, if it doesn't exist.
 - FileSecurity::writeWebConfig in core/
lib/ Drupal/ Component/ FileSecurity/ FileSecurity.php  - Writes a web.config file in the given directory, if it doesn't exist.
 
File
- 
              core/
lib/ Drupal/ Component/ FileSecurity/ FileSecurity.php, line 149  
Class
- FileSecurity
 - Provides file security functions.
 
Namespace
Drupal\Component\FileSecurityCode
protected static function writeFile($directory, $filename, $contents, $force) {
  $file_path = $directory . DIRECTORY_SEPARATOR . $filename;
  // Don't overwrite if the file exists unless forced.
  if (file_exists($file_path) && !$force) {
    return TRUE;
  }
  // Writing the file can fail if:
  // - concurrent requests are both trying to write at the same time.
  // - $directory does not exist or is not writable.
  // Testing for these conditions introduces windows for concurrency issues to
  // occur.
  if (@file_put_contents($file_path, $contents)) {
    return @chmod($file_path, 0444);
  }
  return FALSE;
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.