get_date_from_gmt

Переводит дату в часовом поясе GMT/UTC в локальный часовой пояс сайта. Принимает дату в формате Y-m-d H:i:s.

Возвращаемый формат можно изменить во втором параметре $format, но при этом передаваемый формат должен соответствовать: Y-m-d H:i:s.

Переводит дату на основе настройки сайта timezone_string (содержит Asia/Tashkent). Если её нет, то используется настройка gmt_offset (содержит 5, 6, -3, -4…).

Чтобы, наоборот, получить дату в GMT, используйте get_gmt_from_date()
✈ 1 раз = 0.000149с = быстро | 50000 раз = 3.75с = быстро

Хуков нет.

Возвращает

Строку. Дату в текущим для сайта часовым поясом.

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

get_date_from_gmt( $string, $format );
$string(строка) (обязательный)
Дата которую необходимо преобразовать.
$format(строка)
Формат возвращаемой даты. Весь список возможных форматов.
По умолчанию: ‘Y-m-d H:i:s’

Примеры

#1 Получим локальное время сайта из времени в GMT

Данный пример справедлив если wp-admin/options-general.php выбран часовой пояс UTC+4.

<?php
function get_date_from_gmt( $string, $format = 'Y-m-d H:i:s' ) {
	$tz = get_option( 'timezone_string' );
	if ( $tz ) {
		$datetime = date_create( $string, new DateTimeZone( 'UTC' ) );
		if ( ! $datetime )
			return date( $format, 0 );
		$datetime->setTimezone( new DateTimeZone( $tz ) );
		$string_localtime = $datetime->format( $format );
	} else {
		if ( ! preg_match('#([0-9]{1,4})-([0-9]{1,2})-([0-9]{1,2}) ([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2})#', $string, $matches) )
			return date( $format, 0 );
		$string_time = gmmktime( $matches[4], $matches[5], $matches[6], $matches[2], $matches[3], $matches[1] );
		$string_localtime = gmdate( $format, $string_time + get_option( 'gmt_offset' ) * HOUR_IN_SECONDS );
	}
	return $string_localtime;
}

Комментарии:


Оставить комментарий

Your email address will not be published. Required fields are marked *