Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] In-CRE-I-BLE!! - Problemas con Función DATE que no devuelve bien la hora

Estas en el tema de In-CRE-I-BLE!! - Problemas con Función DATE que no devuelve bien la hora en el foro de PHP en Foros del Web. Hola buenas tardes... Hace mucho que le estoy dando vueltas a algo super hiper sencillo pero que en mi maquina local(paquete xampp) no me está ...
  #1 (permalink)  
Antiguo 05/11/2013, 15:34
Avatar de nublar
(Desactivado)
 
Fecha de Ingreso: octubre-2003
Ubicación: Argentina - BsAs
Mensajes: 321
Antigüedad: 20 años, 5 meses
Puntos: 0
In-CRE-I-BLE!! - Problemas con Función DATE que no devuelve bien la hora

Hola buenas tardes...

Hace mucho que le estoy dando vueltas a algo super hiper sencillo pero que en mi maquina local(paquete xampp) no me está funcionando y es rarisimo...

<?php
echo date("H",time());
?>


y me devuelve 19

Lo loco es que la hora en mi pc son las 18hs!!!

probe de todo...
$hoy = getdate();
print_r($hoy);


que me devuelve:

Array ( [seconds] => 14 [minutes] => 33 [hours] => 19 [mday] => 5 [wday] => 2 [mon] => 11 [year] => 2013 [yday] => 308 [weekday] => Tuesday [month] => November [0] => 1383687194 )

El resto de la fecha incluso los minutos y segundos estan bien.... pero no la hora no coincide con la hora de la pc...

Tambien resetie el servidor y nada....

Se habra pinchado algo en el XAMPP??
  #2 (permalink)  
Antiguo 05/11/2013, 15:36
Avatar de jonni09lo
Colaborador
 
Fecha de Ingreso: septiembre-2011
Ubicación: Estigia
Mensajes: 1.471
Antigüedad: 12 años, 6 meses
Puntos: 397
Respuesta: In-CRE-I-BLE!! - Problemas con Función DATE que no devuelve bien la hora

Increíble sea de que no hayas leído el manual

En ningún momento veo que uses setlocale. Revisa la documentación.

Saludos
__________________
Haz preguntas inteligentes-Como ser Hacker
No hacer preguntas por mensaje privado. No sólo no es inteligente sino que es egoísta.
  #3 (permalink)  
Antiguo 05/11/2013, 15:47
Avatar de nublar
(Desactivado)
 
Fecha de Ingreso: octubre-2003
Ubicación: Argentina - BsAs
Mensajes: 321
Antigüedad: 20 años, 5 meses
Puntos: 0
Desacuerdo Respuesta: In-CRE-I-BLE!! - Problemas con Función DATE que no devuelve bien la hora

Lo que necesito es que me tome la misma hora que me figura en la pc...


setlocale(LC_ALL, 'es_ES');
echo date("H",time());


TAMPOCO FUNCIONA

setlocale(LC_ALL, 'es_AR');
echo date("H",time());


TAMPOCO FUNCIONA
  #4 (permalink)  
Antiguo 05/11/2013, 15:51
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 15 años, 11 meses
Puntos: 2534
Respuesta: In-CRE-I-BLE!! - Problemas con Función DATE que no devuelve bien la hora

¿Y qué tiene de IN-CRE-I-BLE tu asunto?

La función correcta para configurar la zona es date_default_timezone_set(), consulta el manual.

La función setlocale() es para establecer la configuración regional de idioma, pero no la zona horaria.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 05/11/2013, 15:51
Avatar de jonni09lo
Colaborador
 
Fecha de Ingreso: septiembre-2011
Ubicación: Estigia
Mensajes: 1.471
Antigüedad: 12 años, 6 meses
Puntos: 397
Respuesta: In-CRE-I-BLE!! - Problemas con Función DATE que no devuelve bien la hora

Me disculpo de sobremanera, estaba con otra cosa en la cabeza

Esto es lo que debes de usar.

Saludos
__________________
Haz preguntas inteligentes-Como ser Hacker
No hacer preguntas por mensaje privado. No sólo no es inteligente sino que es egoísta.
  #6 (permalink)  
Antiguo 05/11/2013, 15:52
 
Fecha de Ingreso: enero-2002
Mensajes: 1.174
Antigüedad: 22 años, 1 mes
Puntos: 21
Respuesta: In-CRE-I-BLE!! - Problemas con Función DATE que no devuelve bien la hora

Agrega:

date_default_timezone_set("America/Mexico_City");

o la ciudad que te corresponda.
  #7 (permalink)  
Antiguo 07/11/2013, 07:29
Avatar de nublar
(Desactivado)
 
Fecha de Ingreso: octubre-2003
Ubicación: Argentina - BsAs
Mensajes: 321
Antigüedad: 20 años, 5 meses
Puntos: 0
Pregunta Respuesta: In-CRE-I-BLE!! - Problemas con Función DATE que no devuelve bien la hora

date_default_timezone_set lo que hace por lo que vi es definir un offset GMT, y por ejemplo si vivo en Buenos Aires toma la hora del servidor y le resta 3.

Ahora bien...

El problema de base que tengo es que en Mi PC que es donde tengo instalado el servidor la funcion de PHP DATE me devuelve 1 hora atrasada la hora...

Esto es muy fastidioso, por que al insertar registros en MYSQL, uso NOW() para almacenar ciertos registros y NOW() almacena la hora actual de manera perfecta.

Grrrr... sigo probando....

Ayudas bienvenidas!
  #8 (permalink)  
Antiguo 07/11/2013, 07:36
Avatar de Cuervoo  
Fecha de Ingreso: octubre-2013
Mensajes: 165
Antigüedad: 10 años, 5 meses
Puntos: 43
Respuesta: In-CRE-I-BLE!! - Problemas con Función DATE que no devuelve bien la hora

Con esos títulos estás más para trabajar en Crónica.
  #9 (permalink)  
Antiguo 07/11/2013, 09:20
Avatar de nublar
(Desactivado)
 
Fecha de Ingreso: octubre-2003
Ubicación: Argentina - BsAs
Mensajes: 321
Antigüedad: 20 años, 5 meses
Puntos: 0
Respuesta: In-CRE-I-BLE!! - Problemas con Función DATE que no devuelve bien la hora

Bueno, para compensar el defasaje horario que me tira php.. y no tener que usar:

date_default_timezone_set en todos mis scripts

emparche el archivo php.ini como detallo por si a alguien le pasa algo parecido...



[Date]
; Defines the default timezone used by the date functions

; Por defecto toma Sao_Paulo y la hora sale adelantada 1hs
;date.timezone =

; Si configuro Buenos aires... tambien la funcion DATE de PHP adelantada 1hs
;date.timezone = America/Buenos_Aires


;Esto Funciona... SANTIAGO Tiene un GMT de -4, con esto se balancea
date.timezone = America/Santiago

Etiquetas: date, funcion
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 20:26.