DateTimeZone::listIdentifiers() returns supported timezone identifiers that can be used with DateTimeZone and date_default_timezone_set().
$zones = DateTimeZone::listIdentifiers(DateTimeZone::ASIA);
foreach ($zones as $zone) {
echo htmlspecialchars($zone, ENT_QUOTES, 'UTF-8') . '<br>';
}Use the predefined region constants to narrow a long timezone list when building a user-facing selector.

<?Php
$a = timezone_identifiers_list();
while (list ($key, $val) = each ($a)) {
echo "$key -> $val <br>";
}
?>
Note that this way we can give an option to the users to select a time zone.
<form method=post name=f1>
<?Php
$a = timezone_identifiers_list();
echo "<select name=tz onChange=disp_TZ() class='form-control'>";
foreach($a as $key => $val) {
echo "<option value=$val>$val</option>";
}
echo "</select>";
?>
</form>
Author & Instructor at plus2net
I write and maintain practical tutorials on Python, PHP, SQL, JavaScript, HTML, jQuery, and web development at plus2net. The tutorials focus on clear explanations, working examples, and code that readers can test and adapt while learning.