Как управлять часовыми поясами в PHP?

Как выучить PHP3 Программирование и разработка

В этой краткой статье мы объясним основы использования часовых поясов в PHP. Работа с часовыми поясами — важный навык для каждого программиста, работающего с веб-приложениями. Поскольку на протяжении многих лет PHP в основном использовался для веб-приложений, он имеет довольно простую, но всестороннюю поддержку часовых поясов.

Часовые пояса и PHP

Часовые пояса поддерживаются в PHP с версии 4. Но то, что начиналось как базовая реализация функции, date_default_timezone_set()быстро развивалось в версиях 5 и 7 с введением классов DateTimeZoneи DateTimeZoneImmutable.

Это DateTimeZoneImmutableподкласс, DateTimeZoneкоторый позволяет создавать часовые пояса, невосприимчивые к модификациям. Эта функция может быть очень полезна в ситуациях, когда нам нужно быть уверенным, что часовой пояс никогда не изменится.

Функция date_default_timezone_set()устанавливает часовой пояс по умолчанию, используемый всеми функциями времени/даты в данном скрипте. Эта функция позволяет настроить часовой пояс, но имеет очень небольшую степень детализации, что вынуждает нас использовать один и тот же часовой пояс в течение всего выполнения скрипта.

Классы DateTimeZoneи DateTimeZoneImmutableпривнесли больше контроля и гибкости в манипулирование часовыми поясами. Теперь мы можем получить доступ ко всем видам информации о часовом поясе, а также к нескольким экземплярам разных часовых поясов в одном скрипте.

Использование часовых поясов PHP

Как уже отмечалось, существует два основных способа использования часовых поясов в PHP.

Использование date_default_timezone_set()

<?php
    date_default_timezone_set('America/LosAngeles');

Часовые пояса в date_default_timezone_set()методе всегда определяются в форматах «Континент/Город» или «Континент/Страна/Город». Полный список часовых поясов, разрешенных в PHP, вы можете найти здесь.

Это установит часовой пояс в часовой пояс, переданный в качестве аргумента. После того, как мы установили часовой пояс, мы можем использовать такие функции, как date_default_timezone_get()или любые другие функции, связанные со временем, например, date()для доступа к информации о новом часовом поясе.

Читайте также:  HashMap в Java

Использование класса DateTimeZone

Лучший способ использовать часовые пояса в PHP — использовать DateTimeZoneкласс. Это означает, что у нас есть доступ к большему количеству функций для доступа к информации и управления часовыми поясами, и мы можем создавать несколько экземпляров класса, что позволяет нам работать с несколькими часовыми поясами:

<?php 
    $timezone = newDateTimeZone('America/Chicago');
    $datetime = new DateTime($date, $timezone);
    echo $datetime->format('Y-m-d H:i:s');

В этом примере мы создаем новый DateTimeZoneобъект и передаем его новому экземпляру DateTime. Затем объект DateTimeбудет использовать информацию от DateTimeZoneобъекта. Наконец, мы используем format()функцию для вывода даты в предпочтительном для нас формате.

Заключение

Как мы видели, работать с часовыми поясами в PHP довольно просто. Убедитесь, что вы выбрали лучший способ работы для своего варианта использования, и PHP поможет вам!

Оцените статью
bestprogrammer.ru
Добавить комментарий