Foros del Web » Programando para Internet » PHP »

Problema con fecha

Estas en el tema de Problema con fecha en el foro de PHP en Foros del Web. Código: $fecha_inicio = date("Y/m/d", '10/01/1987'); $fecha_fin = date("Y/m/d", '25/08/2009') ; echo "fecha_inicio = " . $fecha_inicio . "<br />"; echo "fecha_fin = " . $fecha_fin ...
  #1 (permalink)  
Antiguo 16/10/2009, 02:39
 
Fecha de Ingreso: abril-2007
Mensajes: 14
Antigüedad: 17 años, 7 meses
Puntos: 0
[Solucionado] Problema con fecha

Código:
$fecha_inicio = date("Y/m/d", '10/01/1987');
$fecha_fin = date("Y/m/d", '25/08/2009') ;

echo "fecha_inicio = " . $fecha_inicio  . "<br />";
echo "fecha_fin = " . $fecha_fin  . "<br />";
devuelve

fecha_inicio = 1970/01/01
fecha_fin = 1970/01/01

Última edición por DigitalUser; 18/10/2009 a las 08:21 Razón: [Solucionado]
  #2 (permalink)  
Antiguo 16/10/2009, 06:25
Avatar de gjx2  
Fecha de Ingreso: agosto-2008
Ubicación: R.D
Mensajes: 1.153
Antigüedad: 16 años, 3 meses
Puntos: 139
Respuesta: Problema con fecha

Código PHP:
Ver original
  1. function getFecha($fecha){
  2. $f = explode("/",$fecha);
  3. return date("Y/m/d",mktime(0,0,0,$f[1],$f[0],$f[2]));
  4.  
  5. }
  6.  
  7.  
  8. $fecha_inicio = getFecha('10/01/1987');
  9.             $fecha_fin = getFecha('25/08/2009') ;
  10.  
  11.             echo "fecha_inicio = " . $fecha_inicio  . "<br />";
  12.             echo "fecha_fin = " . $fecha_fin  . "<br />";
  #3 (permalink)  
Antiguo 16/10/2009, 06:26
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 4 meses
Puntos: 1532
Respuesta: Problema con fecha

revisa bien la documentación de date en php, php trabaja con Marcas de tiempo UNIX, para ello debes convertir la cadena de fecha con mktime o str_to_time /formato anglosajón)
  #4 (permalink)  
Antiguo 18/10/2009, 08:18
 
Fecha de Ingreso: abril-2007
Mensajes: 14
Antigüedad: 17 años, 7 meses
Puntos: 0
Respuesta: Problema con fecha

Gracias gjx2 y maycolalvarez por vuestras respuestas.

Efectivamente el error se encuentra en las marcas de tiempo de Unix.
Hace tiempo que no toco el tema de las fechas, y ambos me habéis agitado el pensamiento ^^

Gracias maycolalvarez por tu función, me ha sido muy útil.

Duda Resuelta.
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 13:00.