Czasami potrzebujesz danych do powtórzenia w przedziale dat, takim jak stały termin kalendarza, cotygodniowe wydarzenie lub harmonogram płatności. Pakiet Modele cykliczne dla Laravel to najlepsze rozwiązanie do dodawania powtarzających się funkcji do modeli Laravel:
$model->repeat()->daily();
$model->repeat()->weekly();
$model->repeat()->weekly()
->on(['sunday', 'monday', 'tuesday']);
Podczas powtarzania modelu data rozpoczęcia jest obliczana przy użyciu startsAt()
metody na modelu. Możesz też określić datę rozpoczęcia w następujący sposób:Można również ustawić datę końcową, kiedy model cykliczny powinien się zatrzymać:A gdy masz już dane cykliczne, możesz je pobrać przy użyciu zakresów dostarczonych przez pakiet:
$model->repeat()->daily()->startsAt(Carbon::make());
$model->repeat()->daily()->endsAt(
Carbon::make('2023-06-01')
);
$tasks = Task::whereOccurresOn(
Carbon::make('2023-05-01')
)->get();
// Between
$tasks = Task::whereOccurresBetween(
Carbon::make('2023-05-01'),
Carbon::make('2023-05-30')
)->get();
Ten nowy pakiet może służyć jako doskonała inspiracja do uproszczenia modeli, które wymagają powtarzania z datami. Aby rozpocząć pracę z tym pakietem, sprawdź kod źródłowy. na GitHub.