需要帮助将时间字符串转换为可用格式

时间:2013-04-15 03:39:41

标签: php

我有一个以下格式的字符串     YYYY-MM-DD-HH-毫米-β

这种格式的原因是因为它是URL的一部分。我需要帮助将其转换为PHP中的可用时间格式。

这是我到目前为止所尝试的内容。

$time = "2013-04-14-23-33-17";
$time2 = strtotime($time);
$time3 = date('M d, Y', $time2) . ' ' . _('at') . ' ' . date('h:i a', $time2);
echo $time3;

它只是回响1970年1月1日上午12:00,这是错误的,而不是2013年4月14日晚上11:33。

2 个答案:

答案 0 :(得分:3)

它不起作用,因为它不是有效的日期格式。请参阅Supported Date and Time Formats

您需要做的是通过指定字符串的格式来创建DateTime对象。

DateTime::createFromFormat正是如此。

答案 1 :(得分:2)

您可以使用DateTime来帮助解析:

$date = DateTime::createFromFormat('Y-m-d-H-i-s', $time);
echo $date->format('M d, Y h:i a');