如何在显示为API的查询的所有日期时间强制使用RFC3339字符串?

时间:2016-04-05 13:04:15

标签: datetime cakephp cakephp-3.0

使用Cake 3.2.4

我现在得到什么?

每当执行查询并且有一个datetime字段时,它将显示为RFC2822字符串。

e.g。 "2016-07-18T09:00:00+0800"

我想要什么?

我想要RFC 3339字符串

e.g。 "2016-07-18T09:00:00+08:00"

我尝试了什么?

        $paginationQuery->formatResults(function (\Cake\Datasource\ResultSetInterface $results) {
            return $results->map(function ($row) {
                $datetime =  $row['start_date'];
                $row['start_date'] = $datetime->format(\DateTime::RFC3339);
                return $row;
            });
        });

我有点强迫原始日期时间对象显示为字符串。

好的,那有什么不对?

我不确定这样做是否错误。您可以清楚地看到,$ row ['start_date']的原始值实际上是一个日期时间对象。不是字符串。

我可以将值保留为datetime对象,但是当它显示为api时,它是否使用RFC3339格式?

0 个答案:

没有答案