Laravel返回UTCDateTime而不是Carbon实例。为什么?

时间:2016-11-14 17:01:15

标签: php mongodb laravel

我的模型中包含以下内容:

 $minDate = $doctor->cases()->min('embedded_doc.my_date');
 $maxDate = $doctor->cases()->max('embedded_doc.my_date');

相同的模型嵌入在另一个文档中(使用Mongo)。

现在,当我尝试通过执行以下操作获取模型中的最小和最大日期时:

(((a.b || {}).c || {}).d || {}).e

我得到的是UTCDateTime而不是Carbon的实例。文档说明如果我在$ dates数组中列出日期,它将返回Carbon实例。我不清楚。我错过了什么?

1 个答案:

答案 0 :(得分:1)

这种情况正在发生,因为当您运行minmax查询时,它会返回单个值,而不是模型的对象。

这就是为什么它没有转换成碳。

您还可以将查询编写为:

$doctor->cases()->orderBy('my_date')->select('my_date')->first()->my_date;

这将给出Carbon对象。