Ottieni l'ultimo giorno del mese con le funzioni PHP
PHP ha già funzioni incorporate che aiuteranno a ottenere l’ultima data di un dato mese. Le funzioni DateTime
e strtotime
sono molto utili in questo scenario, sebbene sia ben noto e documentato che strtotime
non funzionerà accuratamente o darà risultati corretti dopo l’anno 2038. Tuttavia, strtotime
è fantastico per convertire le date.
Entrambe le funzioni utilizzano il formato t
che secondo il manuale ufficiale restituisce il numero di giorni nel mese di una determinata data. Nota che la chiave per ottenere l’ultimo giorno del mese è la lettera t
che restituisce il numero di giorni in un dato mese.
PHP DateTime
per ottenere l’ultima data del mese
Questo è il metodo migliore da utilizzare per ottenere l’ultima data di un mese sia con date future che passate. I parametri passati nella funzione format()
sono - Y
, m
e t
. Queste costanti sono definite in PHP.
Una rappresentazione numerica completa di un anno, 4 cifre è rappresentata dalla lettera Y
, ad esempio, 2020
. La rappresentazione numerica di un mese, con zeri iniziali, è per lettera m
, da 01
a 12
. E il numero di giorni nel mese dato è rappresentato dalla lettera t
.
Questa è l’opzione migliore se la versione PHP utilizzata è successiva a 5.3
$L = new DateTime( '2020-02-01' );
echo $L->format( 'Y-m-t' );
Il codice sopra fornisce la funzione DateTime
con una data e utilizzando i caratteri di formato Y-m-t
per ottenere l’ultima data del mese alla data fornita.
PHP strtotime()
per ottenere l’ultima data del mese
strtotime()
è l’opzione migliore per la versione PHP prima della 5.2.
$date = "2020-01-15";
echo date("Y-m-t", strtotime($date));