2014-04-01 40 views
0

我这种格式外汇牌价12小时至24小时12:00:上午 - > 00:00:00

// $start equals 2014-04-19 12:00:am 
// I need to convert to 24hr 2014-04-19 00:00:00 

$startconvert = str_replace(':am', '', $start); 
$startconverted = date('Y-d-m H:i:s', strtotime($startconvert)); 
echo($startconverted); 

//becomes 2014-19-04 12:00:00 which is 12pm 

任何人都知道如何做到这一点得到一个日期时间格式从一种形式?这看起来我的权利,但它最终被12点

+1

你真的在'am'之前有':'吗? –

+0

我正要问同样的问题。这可能是你唯一的问题。不要更换'am',只需用空格替换最后的':'。 – James

回答

1
$date = DateTime::createFromFormat('Y-m-d h:i:a', '2014-04-19 12:00:am'); 
echo $date->format('Y-m-d H:i:s'); 

这只是需要你有日期和使用DateTime::createFromFormat()其部分读入。该DateTime对象然后可以正常格式化。

+0

为什么不应该? –

+0

它是一个识别的DateTime对象..所以有可用的格式选项 –

相关问题