将此字符串转换为datetime

时间:2011-11-09 09:45:14

标签: php

  

可能重复:
  PHP: Convert uncommon date format to timestamp in most efficient manner possible?

如何将此字符串转换为日期时间格式? 06月/ 10月/ 2011:19:00:02

我尝试了这个,但它不起作用。

$s = '06/Oct/2011:19:00:02';

$date = strtotime($s);
echo date('d/M/Y:H:i:s', $date);

2 个答案:

答案 0 :(得分:56)

使用DateTime::createFromFormat

$date = date_create_from_format('d/m/Y:H:i:s', $s);
$date->getTimestamp();

答案 1 :(得分:24)

问题在于您的代码格式化,

为了使用strtotime()您应该将'06/Oct/2011:19:00:02'替换为06/10/2011 19:00:02,将date('d/M/Y:H:i:s', $date);替换为date('d/M/Y H:i:s', $date);。注意两者之间的空格。

所以最终的代码看起来像这样

$s = '06/10/2011 19:00:02';
$date = strtotime($s);
echo date('d/M/Y H:i:s', $date);