PHP: calcolare la differenza in giorni tra due date

In questo articolo vedremo come calcolare la differenza in giorni tra due date con PHP.

La soluzione è la seguente:


function get_days_between_dates($start_date, $end_date) {
    $start_date = strtotime($start_date);
    $end_date = strtotime($end_date);
    $days_between = ceil(abs($end_date - $start_date) / 86400);
    return $days_between;
}

La funzione inizia convertendo le date di input ($start_date e $end_date) in timestamp Unix utilizzando la funzione strtotime(). Un timestamp Unix rappresenta il numero di secondi trascorsi dal 1º gennaio 1970 alle 00:00:00 (UTC). Questo è un formato comune per manipolare date e orari in molti linguaggi di programmazione, compreso PHP.

Successivamente, la funzione calcola la differenza in secondi tra le due date utilizzando la funzione abs() per ottenere il valore assoluto e quindi ceil() per arrotondare all'intero superiore. La differenza viene divisa per 86400, che è il numero di secondi in un giorno (24 ore * 60 minuti * 60 secondi). Infine, il numero risultante viene restituito come output della funzione.

Torna su