Método getOffset de la clase DateTime

El método getOffset de la clase DateTime devuelve el desplazamiento de la zona horaria en segundos respecto al tiempo GMT (UTC). Esto es útil cuando se trabaja con diferentes zonas horarias. El método no toma parámetros y devuelve un número entero.

Sintaxis

php$datetime->getOffset();

Ejemplo

Obtengamos el desplazamiento para la hora actual en la zona horaria Europe/Moscow:

php<?php
  $date = new DateTime('now', new DateTimeZone('Europe/Moscow'));
  $res = $date->getOffset();
  echo $res;
?>

Resultado de ejecutar el código (puede variar según la temporada):

php10800

Ejemplo

Comparemos los desplazamientos para diferentes zonas horarias:

php<?php
  $zones = ['UTC', 'America/New_York', 'Asia/Tokyo'];
  foreach ($zones as $zone) {
    $date = new DateTime('now', new DateTimeZone($zone));
    echo $zone . ': ' . $date->getOffset() . "\n";
  }
?>

Resultado de ejecutar el código:

phpUTC: 0
America/New_York: -18000
Asia/Tokyo: 32400

Ver también