У меня есть смещение по Гринвичу в секундах. я бы хотел set_default_time_zone()
к этому смещению по Гринвичу. Что я имею в виду, что если у меня смещение по Гринвичу до 2 часов (7200 секунд), оно установит часовой пояс GMT + 2, если у меня есть 3 часа (10800 секунд), он установит часовой пояс по GMT + 3, как я могу это сделать ? set_default_time_zone()
принимать только предварительно определенные строки часовых поясов.
Вы можете использовать смещения по Гринвичу, но вы должны использовать Etc
префикс. Следующие работы:
date_default_timezone_set('Etc/GMT+5');
Но это не рекомендуется, не рекомендуется, смотрите здесь: http://php.net/manual/en/timezones.others.php
Кроме того, я лично рекомендовал бы не работать со смещениями, потому что при обработке даты / времени есть много подводных камней, где смещения по Гринвичу могут привести к плохим результатам (например, летнее время, первый день недели).
Обычно рекомендуется работать с UTC внутри и устанавливать местное время в соответствии с географическим часовым поясом вместо смещения по Гринвичу.
Других решений пока нет …