如何在PHP中将String转换为Date?

时间:2016-07-28 12:04:49

标签: php date

我试图以d/m/Y H:i格式获取日期。这是我的代码

$dateStr = "28/07/2016 10:00";
echo date('d/m/Y H:i', strtotime($dateStr));

这是输出:

01/01/1970 01:00

我尝试转换为其他格式,但结果仍然是相同的日期。我知道这种显而易见的,但仍然无法理解为什么我会把这个日期作为结果。

3 个答案:

答案 0 :(得分:1)

您可以使用DateTime类及其createFromFormat方法以所需格式解析字符串。

像这样,

$date = DateTime::createFromFormat('d/m/Y H:i', "28/07/2016 10:00");
$date = $date->format('Y-m-d H:i:s');
echo $date;

答案 1 :(得分:0)

使用以下代码

$dateStr = "28/07/2016 10:00";
$dateStr =str_replace("/","-",$dateStr);
echo date('d/m/Y H:i', strtotime($dateStr));

答案 2 :(得分:0)

此代码实现了您想要做的事情:

$dateString = '28/07/2016 10:00';
$date = \DateTime::createFromFormat('d/m/Y H:i', $dateString);
echo($date->format('d/m/Y H:i'));