Creating a timezone resource:
<?php
$tz = new DateTimeZone("Asia/Singapore");
?>
Using the timezone when parsing a string:
<?php
$tz = new DateTimeZone("Pacific/Honolulu");
$ts = new DateTimeImmutable("1978-12-22 09:15", $tz);
?>
A passed timezone does not override a parsed timezone:
<?php
$tz = new DateTimeZone("Pacific/Honolulu");
$ts2 = new DateTimeImmutable("1978-12-22 09:15 Europe/London", $tz);
echo $ts2->format( DateTime::RFC2822 );
?>