Get DateTime now for a specific time zone
Example 1
//Get time now in specified time zone
$dt = new DateTime("now", new DateTimeZone('Europe/London')); //E.g. 'UTC', 'Europe/London', full list at: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
$TimeNow = $dt->format('Y-m-d H:i:s');
Example 2
try
{
$TimeZone = new DateTimeZone('America/New_York');
$LocalDateTime = new DateTime(gmdate("Y-m-d\TH:i:s")); //gmdate gives UTC/GMT datetime
$LocalDateTime->setTimezone($TimeZone);
echo $LocalDateTime->format('Y-m-d\TH:i:s');
}
catch (Exception $e)
{
//Will occur if DateTimeZone string is not valid
}
Feel free to comment if you can add help to this page or point out issues and solutions you have found. I do not provide support on this site, if you need help with a problem head over to stack overflow.