Funcion is_date()
Bueno, la acabo de hacer, y me apetecía compartirla. Imagino que habrá alguna otra por ahí, pero esta es mía, mi tesooooro :)
[php]
function is_date($fecha){
//Comprueba si la cadena introducida es de la forma D/m/Y (15/04/1920)
if (ereg(”([0-9]{1,2})/([0-9]{1,2})/([0-9]{4})”, $fecha, $bloques)){
if (($bloques[2]>12)|($bloques[2]<1)){
return FALSE;
}
if (($bloques[2]==4)|($bloques[2]==6)|($bloques[2]==9)|($bloques[2]==11)){
$dias_mes = 30;
}else{
if ($bloques[2]==2){ //febrero
if((($bloques[3]%4==0)&(!($bloques[3]%100==0)))|($bloques[3]%400==0)){
$dias_mes = 29;
}else{
$dias_mes = 28;
}
}else{
$dias_mes = 31;
}
}
if (($bloques[1]<1)|($bloques[1]>$dias_mes)){
return FALSE;
}
}else{
return FALSE;
}
return TRUE;
}
[/php]



Criticón
said,
Wrote on Septiembre 14, 2007 @ 16:50
mmmmm
existe una función checkdate, a la cual se le pasa como parámetros el día, mes y año por separado, y te devuelve si es correcta o no.
http://php.net/checkdate
Pero la tuya también está bien… xD
TheKevin
said,
Wrote on Septiembre 22, 2007 @ 16:34
Y además date(’t',mktime(0,0,0,0,$bloques[2],$bloques[3]) te devuelve el número de días de ese mes y no hace falta tanto rollo xD.
TheKevin
said,
Wrote on Septiembre 22, 2007 @ 16:35
Perdon, falta cerrar el date() xD.
RaFa...eL
said,
Wrote on Septiembre 24, 2007 @ 01:11
Jeje, esta función es casi casi de las de Pascal que nos dio Alma en Programación I (por lo de es_bisiesto()).
Pablo Hernández
said,
Wrote on Abril 1, 2008 @ 23:22
jajaja, como se ve que no tienen ideales de programación… La función está buenísima, sirve para saber si el usuario ingresó bien la fecha, le voy a modificar un poco para agregarle la capacidad de elegir entre distintos formatos, felicidades, me ahorraste horas de tonteo-error… jajaja