Calcular si un año es bisiesto en PHP


Una de los primeros ejercicios que se hacen en cualquier lenguaje de programación es el de calcular si un año es bisiesto o no. Generalmente se usa la regla de si el año es divisible por 4 pero no divisible por 100 salvo en el caso de ser divisible por 400.



Un ejemplo de código puede ser el siguiente:

function esBisiesto($year){
   if((!($year%4) && ($year%100)) || !($year%400)){
      return TRUE;
   }else{
      return FALSE;
   }
}

Sin embargo, podemos aplicar la regla de oro de la programación: Antes de programar algo, comprueba si ya esta programado (y copialo).

function esBisiesto($year){
   return date('L',mktime(1,1,1,1,1,$year));
}

La función date(‘L’) nos devuelve un 1 si es bisiesto y 0 si no lo es. Gracias a mktime calculamos un tiempo que entre dentro del año que le pasamos.
A veces dar una vuelta por php.net nos puede ahorrar algo de tiempo y enseñarnos nuevas formas de usar funciones tan conocidas como “date”

Comentarios

Publicar un comentario

Entradas populares