Как получить дату с помощью часового пояса, сохраненного в параметрах?

Этот код работает некорректно и возвращает время с использованием часового пояса с компьютера и игнорирует часовой пояс, хранящийся в параметрах WordPress:

date_default_timezone_set( get_option( 'timezone_string' ) ); $hours = date( 'H', strtotime( $timestamp ) ); date_default_timezone_set(@date_default_timezone_get()); 

WordPress сохраняет часовой пояс в разделе параметров, но параметр «timezone_string» в таблице wp_options пуст. Также код генерирует предупреждения.

Как правильно получить дату, используя временной пояс, сохраненный в параметрах?

Где WordPress хранит часовой пояс, который можно редактировать в разделе параметров?

Solutions Collecting From Web of "Как получить дату с помощью часового пояса, сохраненного в параметрах?"

Я использую это:

$mytheme_timezone = get_option('timezone_string'); date_default_timezone_set($mytheme_timezone);

в моих темах functions.php. Для меня это работало без каких-либо предупреждений.

Я также тестировал, работает ли мой скрипт в другом часовом поясе, чем php.ini:

  if (strcmp($mytheme_timezone, ini_get('date.timezone'))){ echo 'Script timezone differs from ini-set timezone.'; } else { echo 'Script timezone and ini-set timezone match.'; } 

Пожалуйста, улучшите этот ответ, если у вас есть более глубокое понимание.