Spatie\Backup\Tasks\Cleanup\Strategies\DefaultStrategy::deleteOldBackups PHP Method

deleteOldBackups() public method

public deleteOldBackups ( BackupCollection $backups )
$backups Spatie\Backup\BackupDestination\BackupCollection
    public function deleteOldBackups(BackupCollection $backups)
    {
        // Don't ever delete the newest backup.
        $this->newestBackup = $backups->shift();
        $dateRanges = $this->calculateDateRanges();
        $backupsPerPeriod = $dateRanges->map(function (Period $period) use($backups) {
            return $backups->filter(function (Backup $backup) use($period) {
                return $backup->date()->between($period->startDate(), $period->endDate());
            });
        });
        $backupsPerPeriod['daily'] = $this->groupByDateFormat($backupsPerPeriod['daily'], 'Ymd');
        $backupsPerPeriod['weekly'] = $this->groupByDateFormat($backupsPerPeriod['weekly'], 'YW');
        $backupsPerPeriod['monthly'] = $this->groupByDateFormat($backupsPerPeriod['monthly'], 'Ym');
        $backupsPerPeriod['yearly'] = $this->groupByDateFormat($backupsPerPeriod['yearly'], 'Y');
        $this->removeBackupsForAllPeriodsExceptOne($backupsPerPeriod);
        $this->removeBackupsOlderThan($dateRanges['yearly']->endDate(), $backups);
        $this->removeOldBackupsUntilUsingLessThanMaximumStorage($backups);
    }