Foros del Web » Programando para Internet » PHP »

Saber si fecha es YYYY-MM-DD (sin checkdate)

Estas en el tema de Saber si fecha es YYYY-MM-DD (sin checkdate) en el foro de PHP en Foros del Web. Lo que quiero hacer no es validar una fecha con checkdate, sino simplemente saber si una fecha tiene el formato YYYY-MM-DD (o sea, 4 cifras ...
  #1 (permalink)  
Antiguo 21/04/2006, 22:16
Avatar de cauly  
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires
Mensajes: 726
Antigüedad: 15 años, 9 meses
Puntos: 0
Saber si fecha es YYYY-MM-DD (sin checkdate)

Lo que quiero hacer no es validar una fecha con checkdate, sino simplemente saber si una fecha tiene el formato YYYY-MM-DD (o sea, 4 cifras guión, 2 cifras, guión y 2 cifras; no me interesa validarlo porque si está de esa manera es que se agregó con un script en JS que tengo y está bién).

Tengo en un campo de la base de datos la edad de los usuarios, pero ahora ese dato lo cambié por la fecha de nacimiento (más lógico que antes) y la edad la calculo en base a esa fecha; pero como lo cambié ahora, los que ya están registrados (más de 2000) tienen en ese campo un valor del tipo "29", en lugar de "1976-09-27", entonces lo que quiero hacer es que si ese campo tiene un dato del tipo "1976-09-27" calcule la edad (ya tengo esa función) y si ese dato no es de ese tipo, que ponga la opción para ingresarlo.
  #2 (permalink)  
Antiguo 22/04/2006, 07:05
Avatar de uamistad  
Fecha de Ingreso: diciembre-2004
Ubicación: Cd. de México
Mensajes: 1.395
Antigüedad: 13 años
Puntos: 1
Código PHP:
<?
if( ereg("^[0-9]{4}-[0-9]{2}-[0-9]{2}$",$fecha) )
   
//está en formato deseado
else
   
// no está en formato deseado
?>
La puse a capella, podría contener algún error, pero de un vistazo rápido, parece que está bien.
__________________
"Di no al Internet Explorer" -Proverbio Chino-
  #3 (permalink)  
Antiguo 22/04/2006, 14:45
Avatar de cauly  
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires
Mensajes: 726
Antigüedad: 15 años, 9 meses
Puntos: 0
PERFECTO, muchas gracias (había visto algo así acá en el foro pero no me andaba bien)
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:08.