PHP:将“2011年10月24日”日期转换为“2011-10-24”的简单方法?

时间:2011-10-24 20:28:54

标签: php

我需要在php中将 2011年10月24日03:16 转换为 2011-10-24 15:16:00

我知道可以通过为每个月创建一个变量“$ jan = 01,$ feb = 02等”,然后使用“explode”按空格分割信息并按正确的顺序重新排列。 / p>

但有没有更简单的方法呢?

5 个答案:

答案 0 :(得分:3)

$string_date = strtotime("Oct 24, 2011");

$date_object = strtotime($string_date);

$formatted = date("Y-m-d h:i:s", $date_object);

查看date()功能以获取更多格式选项。

答案 1 :(得分:1)

函数strtotime()是一个非常强大的日期解析器。使用它来获取传入日期的UNIX时间戳,并使用date()函数以所需格式输出日期。

<?php

$ts = strtotime("Oct 24, 2011 03:16 PM");
$date = date("Y-m-d H:i:s", $ts);

?>

答案 2 :(得分:1)

echo date("Y-m-d H:i:s", strtotime("Oct 24, 2011 03:16 PM"));

答案 3 :(得分:1)

日期('Y-m-d H:i:s',strtotime(“2011年10月24日03:16 PM”));

答案 4 :(得分:0)

此处其他答案中提到的strtotime()选项是最简单的方法,但不要爱上所有日期字符串 - &gt;数字转换的功能。它可以并且会在某些时候搞砸。如果您确切知道日期字符串的格式,请使用更可靠的

$date = DateTime::createFromFormat('M j\, Y', "Oct 24,2011");