Controllare se una anno è bisestile con PHP

Forse non tutti lo sanno, ma non tutti gli anni divisibili per 4 sono bisestili, la regola per controllare se un anno è bisestile è la seguente:

  • L’anno deve essere divisbile per 4
  • Se l’anno è divisbile per 4 non deve essere divisibile per 100
  • Sono bisestili tutti gli anni divisibili per 400

Ora trasformiamo questa definizione in codice php, per prima cosa supponiamo di avere memorizzato in una variabile $anno il valore numerico che individua l’anno.


Per controllare se l’anno è bisestile basta questo codice:

if (($anno%4==0 && $anno%100!=0) || $anno%400==0){
    $annoBisestile = true;
} else {
    $annoBisestile = false;
}

L’estensione ad una funzione che ritorna true in caso l’anno sia bisestile e false in caso contrario è molto semplice.