DateTimeZone::AFRICA, 'America' => DateTimeZone::AMERICA, 'Antarctica' => DateTimeZone::ANTARCTICA, 'Arctic' => DateTimeZone::ARCTIC, 'Asia' => DateTimeZone::ASIA, 'Atlantic' => DateTimeZone::ATLANTIC, 'Australia' => DateTimeZone::AUSTRALIA, 'Europe' => DateTimeZone::EUROPE, 'Indian' => DateTimeZone::INDIAN, 'Pacific' => DateTimeZone::PACIFIC ); $tzlist = array(); foreach ($regions as $name => $mask) { $ids = DateTimeZone::listIdentifiers($mask); foreach ($ids as $id) { $tzlist[$id] = str_replace("_", " ", $id); } } return $tzlist; } }