结合两个不同的日期重组格式

问题描述 投票:1回答:1

我有点卡住了。我有D-M-Y格式的两个日期,如下所示:

01-01-2019

我需要将其转换为API调用的特定格式,即STARTDATE / ENDDATE。这是格式:

2019-01-01T00:00:00.000/2019-01-02T00:00:00.000

我对PHP不太满意,但这是我的尝试:

    // variables
    $start = '01-01-2019';
    $end = '02-01-2019';

    // reformat variables 
    $start = DateTime::createFromFormat('d-m-Y',$start)->format('Y-m-d\TH:i:s.v');
    $end = DateTime::createFromFormat('d-m-Y',$end)->format('Y-m-d\TH:i:s.v');

    $result = $start . '/' . $end;
    echo ($result);

我不能让这个工作,我甚至不确定我应该这样接近它。任何有关这方面的帮助将不胜感激。

php
1个回答
2
投票

如果问题是小时,分钟,秒和毫秒不为零,那么您可以在格式字符串中用零替换字母。

$start = '01-01-2019';
$end = '02-01-2019';

// reformat variables 
$start = DateTime::createFromFormat('d-m-Y',$start)->format('Y-m-d\T00:00:00.000'); //notice here
$end = DateTime::createFromFormat('d-m-Y',$end)->format('Y-m-d\T00:00:00.000'); // and here

$result = $start . '/' . $end;
echo ($result);
//2019-01-01T00:00:00.000/2019-01-02T00:00:00.000
© www.soinside.com 2019 - 2024. All rights reserved.