Blogia
Angel

Validar fecha con php

Función que dice si una fecha es valida o no, necesitamos una principal, que vea los dias que tiene cada año, mes... y otra que diga que años son bisiestos.


function fecha_ok(&$fecha) {

  $fecha=trim($fecha);  //supresion de blancos

  $patron_ok=eregi("^([0-9]{1,2})[-/.]([0-9]{1,2})[-/.]([0-9]{4})$",$fecha,$v);

  if (!patron_ok)

    return false;

  else {

    $dm=array(0,31,28,31,30,31,30,31,31,30,31,30,31);  //dias del mes

    $d=(int)$v[1]; $m=(int)$v[2]; $a=(int)$v[3];

    if (bisiesto($a)) $dm[2]=29;

    if ($d<1 || $d>$dm[$m]) return false;

    if ($m<1 || $m>12) return false;

    return true;

  }

}

 


function bisiesto($anio) {

  return $anio%400? ($anio%4? 0:1): 0; //Los años bisiestos son cada 4 años, excepto los que hacen 400

}

0 comentarios