PHP 8.6.0 Beta 1 is available for testing

gmstrftime

(PHP 4, PHP 5, PHP 7, PHP 8)

gmstrftimeФорматирует дату и время как время UTC с учётом региональных настроек

Внимание

Функция УСТАРЕЛА с PHP 8.1.0. Полагаться на функцию настоятельно не рекомендуют.

Разработчикам доступны следующие альтернативы:

Описание

#[\Deprecated]
function gmstrftime(string $format, ? int $timestamp = null ): string |false

Функция работает аналогично функции strftime() , но игнорирует смещение времени в текущем часовом поясе и форматирует метку времени как UTC-время с учётом региональных настроек. Например, при запуске в системе, в которой установили часовой пояс Eastern Standard Time со смещением GMT-0500, первая строка приведённого примера выведет "Dec 31 1998 20:00:00", а вторая — "Jan 01 1999 01:00:00".

Внимание

Функция зависит от региональных настроек операционной системы, которые не гарантируют совместимость или доступность региональных настроек в другой ОС. Для форматирования даты без влияния региональных настроек ОС вызывают метод IntlDateFormatter::format() .

Список параметров

format

См. описание функции strftime() .

timestamp
Необязательный параметр timestamp — целочисленная (int ) метка времени, которая по умолчанию равна текущему местному времени, если параметр timestamp не указали или равен null . Говоря по другому, значение по умолчанию равно результату функции time() .

Возвращаемые значения

Функция возвращает строку в заданном формате. Функция форматирует дату и время на основе метки времени, которую передали в аргументе timestamp, или текущего локального времени, если метку времени не указали. Названия месяцев, дней недели и других языкозависимых строк учитывают настройки текущей локали, которую установили функцией setlocale() . Функция возвращает значение false , если возникла ошибка.

Список изменений

Версия Описание
8.0.0 Параметр timestamp теперь принимает значение null .

Примеры

Пример #1 Пример форматирования даты и времени как UTC-времени с учетом текущей локали функцией gmstrftime()

<?php
setlocale(LC_TIME, 'es_ES.UTF-8');
date_default_timezone_set('EST');
echo strftime("%B %d %Y %H:%M:%S", mktime(20, 0, 0, 12, 31, 98)) . "\n";
echo gmstrftime("%B %d %Y %H:%M:%S", mktime(20, 0, 0, 12, 31, 98));

Результат выполнения приведённого примера:

Deprecated: Function strftime() is deprecated since 8.1, use IntlDateFormatter::format() instead in script on line 6
diciembre 31 1998 20:00:00
Deprecated: Function gmstrftime() is deprecated since 8.1, use IntlDateFormatter::format() instead in script on line 7
enero 01 1999 01:00:00

Смотрите также

  • IntlDateFormatter::format() - Форматирует значение даты и времени как строку
  • DateTimeInterface::format() - Форматирует дату в заданном формате
  • strftime() - Форматирует местную дату и время с учётом региональных настроек

Нашли ошибку?

ИнструкцияИсправлениеСообщение об ошибке
+Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы

AltStyle によって変換されたページ (->オリジナル) /