PHP Datetime将斜杠转换为减号

时间:2013-08-11 23:14:58

标签: php date datetime

我想将我的日期时间08/11/2013转换为2013-08-11。

我正在尝试这个,但它没有像它想象的那样工作。

$date = $_POST['gt_date']; // Getting 08/11/2013
$date = explode("/", $date); // Exploding the / character into array
$datetime = $date[2] + '-' + $date[0] + '-' + $date[1];

任何想法?

4 个答案:

答案 0 :(得分:3)

您可以将其传递给DateTime以便为您格式化。

$date = new DateTime('08/11/2013');
echo $date->format('Y-m-d');

答案 1 :(得分:1)

我不知道+做了什么,但将代码更改为以下代码将起作用:

$datetime = $date[2].'-'.$date[0].'-'.$date[1];

编辑:我猜+正在将它们加在一起。结果你得到2032?

答案 2 :(得分:0)

这是一个返回格式的函数,这样您就不必重复代码了。

function makeDateFormat($date) {
    $date = $_POST['gt_date'];
    $date = explode("/",$date);
    $new_date = array($date[2], $date[0], $date[1]);
    $date = implode("-",$new_date);
    return $date;
}

答案 3 :(得分:0)

此问题是由“+”运算符引起的,将其更改为“。”运营商。您可以使用此功能:

function formatDate($date) {
    $arr = explode("-",$date);

    $year  = $arr[2];
    $month = $arr[1];
    $day   = $arr[0];

    return $year."-".$month."-".$day;
}