Foros del Web » Programando para Internet » PHP »

Duda con fechas

Estas en el tema de Duda con fechas en el foro de PHP en Foros del Web. Tengo el siguiente codigo @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código PHP: Ver original <?php date_default_timezone_set ( "America/Mexico_City" ) ; $t = mktime ( 0 , 0 , 0 ...
  #1 (permalink)  
Antiguo 26/10/2013, 11:57
Avatar de hackjose  
Fecha de Ingreso: abril-2010
Ubicación: Edo Mexico
Mensajes: 1.178
Antigüedad: 14 años
Puntos: 131
Duda con fechas

Tengo el siguiente codigo
Código PHP:
Ver original
  1. <?php
  2. date_default_timezone_set("America/Mexico_City");
  3. $t = mktime(0,0,0,1,1,1970);
  4. echo date("Z");
  5. ?>

Para empezar puse el timezone mexico_city que es UTC-5
date Z devuelve el desplazamiento en segundos

date Z me devuelve 18000 y ese valor esta bien ya que mexico en UTC-5

pero hay un detalle con el ultimo elemento del array que devuelve getdate, este ultimo elemento devuelve los segundos que han pasado desde el 1 de enero de 1970 a las 0:0:0

Por lo tanto con mktime pongo esa misma fecha pero asumiendo que estoy en mexico
Por lo tanto fecha mktime + desplazamiento = hora en UTC que serian las 5,0,0,1,1,1970 osea las 5 de la mañana UTC
Por lo tanto de la 0 a las 5 UTC han pasado 18000 segundo y el ultimo elemento marca 21600 como si mexico estuviera a -6 horas

PHP solo falla con mexico o tambien con otros paises?

Quien esta mal date Z o getdate ultimo elemento

saludos

Última edición por hackjose; 26/10/2013 a las 11:58 Razón: highlight
  #2 (permalink)  
Antiguo 26/10/2013, 12:44
Avatar de hackjose  
Fecha de Ingreso: abril-2010
Ubicación: Edo Mexico
Mensajes: 1.178
Antigüedad: 14 años
Puntos: 131
Respuesta: Duda con fechas

Ya encontre la respuesta
es por el horario de verano y el horario de invierno

saludos

Etiquetas: fecha
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:07.