I am afraid that you created a DateTime object as follows:
$date = new DateTime('01/18/2016 00:00 AM America/New_York');
This is not a supported / valid datetime format!
If you want to create a DateTime object from a different format, you must call DateTime :: createFromFormat () , look:
$timezone = new DateTimeZone('America/New_York'); $strdate = '01/18/2016 00:00 AM'; $date = DateTime::createFromFormat('m/d/YH:i A', $strdate, $timezone);
PHP Document Status
DateTime :: createFromFormat / date_create_from_format - returns a new DateTime object formatted according to the specified format
source share