La zona horaria en una ubicación no siempre es la misma; por ejemplo, el Reino Unido es BST (GMT + 1) entre marzo y octubre. Utilice una de las zonas horarias admitidas por PHP:
http://php.net/manual/en/timezones.php
Si continúa usando números, guárdelos como horas o minutos. Almacene las zonas horarias al oeste de UTC/GMT como números negativos. Por ejemplo, la costa este de EE. UU. sería -5
(horas) o -300
(minutos), asumiendo que tiene 5 horas de retraso.
Luego, agregue esto a la marca de tiempo:el negativo o el positivo se encargarán del resto.
// for 5 hours behind when stored as hours (-5)
$now = time() + ($offset * 60 * 60);
// for 5 hours behind when stored as minutes (-300)
$now = time() + ($offset * 60);