Как отобразить GMT или BST в PHP? - PullRequest
       19

Как отобразить GMT или BST в PHP?

0 голосов
/ 12 сентября 2018

Кажется, это основной вопрос, но я не могу найти ответ, кроме как "PHP обрабатывает его для вас", и это не то, что мне нужно.

В настоящее время, если я echo date_default_timezone_get();Я получаю Europe/London БОЛЬШОЙ.

Как я могу определить, является ли это BST или GMT.

Мне нужно отобразить Europe/London BST или Europe/London GMT в зависимости от того, что в данный момент.

Как мне надежно это сделать?

1 Ответ

0 голосов
/ 12 сентября 2018

Достаточно просто - получить текущее время в UTC и сравнить его с текущим временем в Europe/London. Если они различаются, действует BST. Если они идентичны, это не так.

В качестве альтернативы, используйте date() O, P или Z параметры по существу одинаково - они должны быть +0000, +00:00 или 0 соответственно, если GMT находится в эффект. (I может тоже работать - я не уверен, технически ли BST считается "летним временем" ...)

...