v2.5.2
Giriş yap

PHP'de 2 tarih arasındaki ay ve günleri almak

recep
218 defa görüntülendi

PHP'de 2 tarih arasında kalan ve ay günleri alabileceğim bir fonksiyona ihtiyacım var.

Örneğin:

Başlangıç tarihi: 2023-01-01
Bitiş Tarihi: 2023-12-31

Buna göre 1. aydan 12. aya kadar bir dizi oluşacak ve bu aylar içinde yine o aya ait günler Y-m-d formatında dizi olarak tutulacak.

Buna bir örnek verir misinz?

Cevap yaz
Cevaplar (1)
tayfunerbilen
359 gün önce

şöyle bir örnek bırakıyorum:

function getMonthsAndDays($startDate, $endDate) {
    $start    = new DateTime($startDate);
    $end      = new DateTime($endDate);
    $interval = new DateInterval('P1D');
    $period   = new DatePeriod($start, $interval, $end);

    $monthsAndDays = array();

    foreach ($period as $date) {
        $month = $date->format('Y-m');
        $day   = $date->format('Y-m-d');

        if (!isset($monthsAndDays[$month])) {
            $monthsAndDays[$month] = array();
        }

        array_push($monthsAndDays[$month], $day);
    }

    return $monthsAndDays;
}

$startDate = '2023-01-01';
$endDate = '2023-12-31';
print_r(getMonthsAndDays($startDate, $endDate));