将yyyy / mm / dd-hh-mm-ss.00转换为Y-m-d H:i:s在php中

时间:2014-02-21 10:26:12

标签: php datetime

我正在开发一个系统来重新设置日期格式,例如:yyyy / mm / dd-hh-mm-ss.00,我需要将其转换为Y-m-d H:i:s。

我做的是:

$newDate = date("Y-m-d H:i:s", strtotime($values[2]));

其中$ values [2]它是该格式的日期,对于instace:2014/01 / 01-13-18-23.00。但结果是:1970-01-01 01:00:00

你能帮助我吗?

由于

4 个答案:

答案 0 :(得分:1)

你应该可以这样做:

$date = DateTime::createFromFormat("Y/M/d-H-i-s.00", $values[2]);
echo $date->format("Y-m-d H:i:s");

答案 1 :(得分:1)

您可以尝试使用strptime

$format = "%Y-%m-%d %H:%i:%s";
echo strptime($values[2], $format);

答案 2 :(得分:1)

尝试使用DateTime

$date = DateTime::createFromFormat('Y/m/d-H-i-s.00', '2014/01/01-13-18-23.00');
echo $date->format('Y-m-d H:i:s');

请参阅演示here

答案 3 :(得分:1)

strtotime()函数的dateTime格式是预定义的,您必须遵循规则才能获得所需的结果。

此处提供了混合日期时间格式PHP: Compound Formats - Manual