PHP 向 Linnworks 发出 API 请求的日期和时间格式
PHP Date and Time Format for an API request to Linnworks
在 Linnworks API 文档中,其中一个 API 请求需要开始和结束日期。格式如下;
2018-02-19T16:57:07.0049771+00:00
我不确定这种格式。这是某种默认格式还是我需要构建它?
如果我需要构建,我会得到明显的部分;
日期;
2018-02-19
时间;
T16:57:07
但是我不知道这部分是什么;
0049771+00:00
它是 Unix 时间戳和时区的 + 吗?
结尾部分是微秒和时区。
如果您使用 date("c") 或 $yourDateObject->format("c") 它应该会为您提供此格式 (ISO 8601) 的完整字符串。
这是 ISO8601 格式,表示:
Decimal fractions may be added to any of the three time elements.
However, a fraction may only be added to the lowest order time element
in the representation.
考虑到这里使用 "may" 这个词,我希望 API 应该允许您指定没有任何此类小数部分的时间戳,假设这对您的应用程序来说是可以接受的。 (免责声明——这是一个猜测。)
如果是这样,只需通过以下方式即可获得:
echo date('c');
产生:
2018-03-20T16:24:37-04:00
格式字符u
(微秒)将return6个字符的长字符串(就php<7.1吧将是 000000
)。
如果您需要 7 个字符的长字符串,只需在末尾添加 0
,如下所示:
$dt = new DateTime();
echo $dt->format('Y-m-d\TH:i:s.u0P');
它会输出这样的东西:2018-03-21T08:47:01.0263140+01:00
在 Linnworks API 文档中,其中一个 API 请求需要开始和结束日期。格式如下;
2018-02-19T16:57:07.0049771+00:00
我不确定这种格式。这是某种默认格式还是我需要构建它?
如果我需要构建,我会得到明显的部分;
日期;
2018-02-19
时间;
T16:57:07
但是我不知道这部分是什么;
0049771+00:00
它是 Unix 时间戳和时区的 + 吗?
结尾部分是微秒和时区。
如果您使用 date("c") 或 $yourDateObject->format("c") 它应该会为您提供此格式 (ISO 8601) 的完整字符串。
这是 ISO8601 格式,表示:
Decimal fractions may be added to any of the three time elements. However, a fraction may only be added to the lowest order time element in the representation.
考虑到这里使用 "may" 这个词,我希望 API 应该允许您指定没有任何此类小数部分的时间戳,假设这对您的应用程序来说是可以接受的。 (免责声明——这是一个猜测。)
如果是这样,只需通过以下方式即可获得:
echo date('c');
产生:
2018-03-20T16:24:37-04:00
格式字符u
(微秒)将return6个字符的长字符串(就php<7.1吧将是 000000
)。
如果您需要 7 个字符的长字符串,只需在末尾添加 0
,如下所示:
$dt = new DateTime();
echo $dt->format('Y-m-d\TH:i:s.u0P');
它会输出这样的东西:2018-03-21T08:47:01.0263140+01:00