14 diciembre 2012

Ajustar el huso horario en PHP

Cuando invocamos la función string date( string $format [, int $timestamp = time() ] ) en PHP, ésta nos devuelve una cadena con formato del tiempo indicado por el parámetro $timestamp o, en el caso de no indicar ningún timestamp, del momento actual.

Un problema típico con el que nos podemos encontrar al leer la fecha y la hora actual es que el servidor se encuentre en un huso horario distinto al de la prestación del servicio. Por ejemplo, cuando el hosting está en algún punto de EEUU y el servicio se está prestando en alguna parte de Europa.

Este problema se puede solucionar fácilmente de forma sencilla con la función bool date_default_timezone_set ( string $timezone_identifier ) tal y como se muestra en este ejemplo:
<?php
   $now = time();
   date_default_timezone_set( 'Europe/Madrid' );
   $fecha = date( "d/m/Y", $now );
   $hora  = date( "H:i:s", $now );
?>
Sigue un listado con todos los husos horarios clasificados por área

0 comentarios: