2

我想像这样转换日期

$original_date = date("M/d/Y"); // the output of that is Aug/27/2013

到“2013 年 8 月 27 日”

4

4 回答 4

4

像这样:

date('m/d/Y', strtotime($original_date));

strtotime几乎可以将任何合理的东西转换成 Unix 时间戳,甚至像“下周五”这样的东西。

编辑

有趣,但似乎 strtime 不适用于像这样格式化的日期......我想到的第一件事是用空格替换那些斜杠,使用 str_replace 或 implode/explode 或任何适合你的东西......

$newDate = date('m/d/Y', strtotime(str_replace('/', ' ', $origDate)));
$newDate = date('m/d/Y', strtotime(implode(' ', explode('/', $origDate))));
于 2013-08-27T02:49:40.640 回答
2

只需将其传递回日期函数

$original_date = date("M/d/Y");

$new_date = date('m/d/Y', strtotime($original_date));
于 2013-08-27T02:49:23.340 回答
2

只需更改格式字符串:

$originalDate = date("m/d/Y"); // = 08/27/2013
于 2013-08-27T02:51:53.860 回答
0

或使用DateTime并指定输入格式以避免歧义:-

$dateString = \DateTime::createFromFormat('M/d/Y', $origanalDate)->format('m/d/Y');
于 2013-08-27T07:31:59.000 回答