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