public static function removeDirectory($directory) { if (self::exists($directory)) { $dir = new self($directory); $dir->scan(); $files = $dir->getFiles(); foreach ($files as $file) { $file->remove(); } $dirs = $dir->getDirectories(); foreach ($dirs as $dir) { self::removeDirectory($dir); } return rmdir($directory); } }