如何将日期更改为此格式?

时间:2017-11-02 02:21:40

标签: php date datetime odata

我目前的日期格式如下:

2017-11-02 11:44:24

然而;我需要这种格式:2014-03-11T14:49:52

这是因为使用了基于oData的RESTful API。我怎样才能实现这种日期格式?

2 个答案:

答案 0 :(得分:1)

这看起来像是DateTime:createFromFormat

的工作
$date = DateTime::createFromFormat('Y-m-d H:i:s', '2017-11-02 11:44:24');
echo $date->format('Y-m-d\TH:i:s');

获得DateTime对象后,您可以根据需要使用 - > format()

进行格式化

答案 1 :(得分:0)

日期和时间可能很棘手,但您想要确定的是您所在地区的日期和时间格林威治标准时间(GMT)或世界时间坐标(UTC)。 GMT和UTC都指的是同一时间,但您的服务器/数据库/发布日期可能在您当地时间。以下是您可以在当地时间使用的示例:

date_default_timezone_set("America/New_York");
$date = date('Y-m-d\TG:i:s');
echo $date;

这将echo 2017-11-02T01:02:58。首都G代表24小时时间戳,小g代表12小时时间戳。

根据服务器的设置方式,如果没有date_default_timezone_set,您将获得UTC时间。