Foros del Web » Programando para Internet » PHP »

date() esta loco

Estas en el tema de date() esta loco en el foro de PHP en Foros del Web. Amigos : la funcion date() me da la fecha "bien" pero la hora difiere de la realidad porque es una mas que la de mi ...
  #1 (permalink)  
Antiguo 16/11/2009, 16:05
 
Fecha de Ingreso: agosto-2009
Mensajes: 247
Antigüedad: 14 años, 8 meses
Puntos: 10
Exclamación date() esta loco

Amigos: la funcion date() me da la fecha "bien" pero la hora difiere de la realidad porque es una mas que la de mi pais y la que indica mi maquina

En mi maquina son las 19:01 y me dice que son las 20:01 (en la misma maquina)

Código PHP:
<?php
echo date ('D, d M Y H:i:s');
?>
Alguien sabe que puede estar pasando? gracias!

Última edición por bigwhite; 16/11/2009 a las 16:16
  #2 (permalink)  
Antiguo 16/11/2009, 16:10
Avatar de bioxido  
Fecha de Ingreso: diciembre-2008
Ubicación: $_SERVER['PHP_SELF']
Mensajes: 601
Antigüedad: 15 años, 4 meses
Puntos: 21
Respuesta: date() esta loco

Si estas corriendo el script en tu pc, es probable que date() tome la fecha desde un servidor externo de ee.uu o donde sea...

Si lo estas haciendo desde un servidor que no es tu pc, obvio... date() da la fecha de servidor, no de tu pc... si lo que queres es la fecha de tu pc, talvez necesites trabajar con javascript o con alguna libreria mas avanzada que te permita buscar la hora dependiendo de la franja horaria a la que pertenece el IP.
  #3 (permalink)  
Antiguo 16/11/2009, 16:16
 
Fecha de Ingreso: agosto-2009
Mensajes: 247
Antigüedad: 14 años, 8 meses
Puntos: 10
Respuesta: date() esta loco

gracias bioxido! no se me habia ocurrido
  #4 (permalink)  
Antiguo 16/11/2009, 16:18
Avatar de AnesGy  
Fecha de Ingreso: mayo-2009
Mensajes: 518
Antigüedad: 14 años, 11 meses
Puntos: 19
Respuesta: date() esta loco

Como bien dice bióxido es por el huso horario de tu servidor. Piensa en esto, PHP es un lenguaje del lado del servidor, y el servidor no es tu ordenador (si lo es y te desfasa la hora es porque has debido de cambiar algo en el php.ini). El lenguaje PHP tomará la fecha del servidor, por tanto a no ser que le envíes al servidor tu hora para que te la calcule no sería lógico que estubieran sincronizados.

Creo que se puede cambiar si puedes editar el PHP.ini. Si no puedes cambiar la configuración programaticamente para cada script que cargues. Mira en php.net
__________________
Si alguna vez parece que soy grosero, pido perdón, es un intento fallido de ser directo.

AnesGy SD. Name it, Get it
  #5 (permalink)  
Antiguo 16/11/2009, 16:22
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: date() esta loco

Para otorgar la hora conforme al pais tuyo, usando PHP, puedes usar la funcion date_default_timezone_set. Mira aqui un ejemplo de como usarla http://www.forosdelweb.com/f18/funci...6/#post2931396
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #6 (permalink)  
Antiguo 16/11/2009, 18:18
Avatar de almagropaco_  
Fecha de Ingreso: marzo-2008
Ubicación: Mar del Plata
Mensajes: 854
Antigüedad: 16 años, 1 mes
Puntos: 25
Respuesta: date() esta loco

Cita:
Iniciado por abimaelrc Ver Mensaje
Para otorgar la hora conforme al pais tuyo, usando PHP, puedes usar la funcion date_default_timezone_set. Mira aqui un ejemplo de como usarla http://www.forosdelweb.com/f18/funci...6/#post2931396
Lo que iba a decir yo, se configura, y hay una forma, no se como, que se capte el GMT del user visitante, entonces se mostrara la hora correcta para todo usuario.
  #7 (permalink)  
Antiguo 16/11/2009, 19:09
 
Fecha de Ingreso: agosto-2009
Mensajes: 247
Antigüedad: 14 años, 8 meses
Puntos: 10
Respuesta: date() esta loco

Gracias a todos, mis amigos!!!!!
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 07:40.