allFiles(); $now = Carbon::now(); // Delete older modified files foreach ($files as $file) { $lastModified = Carbon::createFromTimestamp($disk->lastModified($file)); if(Str::startsWith($file, 'sessions/')) $shouldDelete = $now->diff($lastModified)->total('days') * -1 > self::SESSION_FILE_DAYS_OLD; else $shouldDelete = $now->diff($lastModified)->total('days') * -1 > self::FILE_DAYS_OLD; if($shouldDelete) $disk->delete($file); } //Loop over all directories to delete empty ones. $directories = $disk->allDirectories(); foreach ($directories as $directory) { $files = $disk->allFiles($directory); if(count($files) === 0) $disk->deleteDirectory($directory); } } }