Php 将示例日期格式转换为所需格式

Php 将示例日期格式转换为所需格式,php,date,datetime,Php,Date,Datetime,我想从物流合作伙伴那里得到回复,比如2013-03-28813:15:00+05:30我想要IST格式的日期。如何正确转换它 $addTime = explode('+',$response->TrackDetails->ActualDeliveryTimestamp); if($addTime[1] == '05:30'){ $time = ''; $time = strtotime('+5:30 hrs',$addTime[0]); echo date('Y-m-d H:i:s

我想从物流合作伙伴那里得到回复,比如2013-03-28813:15:00+05:30我想要IST格式的日期。如何正确转换它

$addTime = explode('+',$response->TrackDetails->ActualDeliveryTimestamp);
if($addTime[1] == '05:30'){
$time = '';
$time = strtotime('+5:30 hrs',$addTime[0]); 
echo date('Y-m-d H:i:s',strtotime($addTime[0]));
}
我试过上面的代码。但它不能正常工作

$addTime = explode('+','2013-03-28T13:15:00+05:30');
list($hours, $minutes) = explode(':', $addTime[1]);

$dt = new DateTime($addTime[0]);
$dt->add(new DateInterval('PT'.intval($hours).'H'));
$dt->add(new DateInterval('PT'.intval($minutes).'M'));
echo $dt->format('Y-m-d H:i:s');
编辑

虽然由于夏令时的原因,结果并非您所期望的那样,但这更准确:

$dt = new DateTime('2013-03-28T13:15:00+05:30');
$dt->setTimeZone(new DateTimeZone('UTC'));
echo $dt->format('Y-m-d H:i:s');

该日期为GMT格式。我想要它在IST中,所以我需要在5:30时添加它