Validare una data con il php tramite la funzione checkdate

La funzione checkdate() prende in input tre parametri numerici, il primo rappresenta il mese, il secondo il giorno e il terzo l’anno e restituisce vero se la data è corretta o falso se la data è scorretta.

Ad esempio

if ((checkdate(2,29,2011)) echo "Giusta"; echo "Sbagliata";

Stamperà Sbagliata visto che la data che gli passiamo non esite.

if ((checkdate(2,29,2000)) echo "Giusta"; echo "Sbagliata";

Invece stamperà Giusta visto che l’anno 2000 è stato bisestile.

Tramite questa funzione possiamo con semplicità costruirci una nostra funzione che ci dice se un anno è bisestile o meno.

function annoBisestile($anno){
     return checkdate(2,29,$anno)
}

Il funzionamento è molto semplice, se la data 29/2/$anno è giusta checkdate() tornerà true, ma siccome stiamo controllando il 29 febbraio $anno vuol dire che $anno è bisestile, per lo stesso motivo la funzione ritornerà falso qualora l’anno non sia bisestile.