You are here

public function DirectoryOperations::directoryRemove in AT Tools 8.3

Same name and namespace in other branches
  1. 8 at_theme_generator/src/File/DirectoryOperations.php \Drupal\at_theme_generator\File\DirectoryOperations::directoryRemove()
  2. 8.2 at_theme_generator/src/File/DirectoryOperations.php \Drupal\at_theme_generator\File\DirectoryOperations::directoryRemove()

Delete a folder and all files recursively.

Parameters

$directory:

Return value

bool Returns TRUE on success, FALSE on failure Returns TRUE on success, FALSE on failure

File

at_theme_generator/src/File/DirectoryOperations.php, line 62
Contains \Drupal\at_theme_generator\File\DirectoryOperations

Class

DirectoryOperations

Namespace

Drupal\at_theme_generator\File

Code

public function directoryRemove($directory) {
  if (!file_exists($directory)) {
    return false;
  }
  if (is_file($directory)) {
    return \Drupal::service('file_system')
      ->unlink($directory);
  }
  $dir = dir($directory);
  while (false !== ($entry = $dir
    ->read())) {
    if ($entry == '.' || $entry == '..') {
      continue;
    }
    self::directoryRemove("{$directory}/{$entry}");
  }
  $dir
    ->close();
  return \Drupal::service('file_system')
    ->rmdir($directory);
}