Для того щоб отримати масив списку всіх таймзон із різницею у часі відносно Гринвіча, використовуйте наступну функцію:
function get_time_timezones()
{
$zones_array = array();
$timestamp = time();
$default_timezone = date_default_timezone_get();
$timezone_list = timezone_identifiers_list();
foreach ($timezone_list as $zone)
{
date_default_timezone_set($zone);
$zones_array[$zone] = date('P', $timestamp);
}
date_default_timezone_set($default_timezone);
return $zones_array;
}

