在URL中传递英国日期

use*_*899 2 php date

我按照以下方式在英国格式的URL中传递日期:

http://www.website.com/index.php?from_date=01/04/2013&to_date=12/04/2013

日期范围为2013年4月1日至2013年4月12日.

然后我使用以下PHP将其转换为YYYY-MM-DD格式.

<?php

$rpt_from_date = date("Y-m-d", strtotime($_GET["from_date"]) );
$rpt_to_date = date("Y-m-d", strtotime($_GET["to_date"]) );

echo $rpt_from_date;
echo "</br>";
echo $rpt_to_date;

?>
Run Code Online (Sandbox Code Playgroud)

由于某种原因,这是行不通的.以上返回以下内容:

2013年1月4日

2013年12月4日

它正在切换月和日.我希望它返回:

2013年4月1日

2013年4月12日

有没有人有任何想法?

Rik*_*esh 7

使用DateTime对象,让php了解你将日期传递给它的格式.

$rpt_from_date = DateTime::createFromFormat('d/m/Y', $_GET["from_date"]);
echo $rpt_from_date->format('Y-m-d');
Run Code Online (Sandbox Code Playgroud)