从 Carbon\Carbon 对象中获取日期

Fetch date from Carbon\Carbon Object

我得到一个集合,其中包含

  [80] => Array
            (
                [date] => Carbon\Carbon Object
                    (
                        [date] => 2018-04-04 17:27:24.000000
                        [timezone_type] => 3
                        [timezone] => UTC
                    )

我想从这里获取日期,当我执行 foreach 时,它给出了一个 Carbon\Carbon 对象('date' 像这样,但随后无法访问日期。

有人知道解决办法吗?

Carbon 是一个很好的日期包装器。它有一个非常棒的 API 来获取日期减法、测试日期是否在一个范围内、格式化日期等。

听起来您要将 Carbon 个对象的数组格式化为一个日期。

您可以使用 array_map 来产生这种结果:

$dates_formatted = array_map(function($entry) {
    // transform the Carbon object to something like 'Dec 25, 1975'
    return $entry['date']->toFormattedDateString();  
}, $dates);

注意:我假设你的数组被命名为$dates。如果您想要更准确的答案,请提供您的集合的全部输出以及变量名称。

要尝试其他日期格式选项,请查看他们的(很棒的)文档:https://carbon.nesbot.com/docs/#api-formatting

$analyticsData = Analytics::fetchVisitorsAndPageViews(周期::天(7));

   foreach($analyticsData as $data)
   {
       print_r($data['date']->toDateString());die;
   }

如果你想转换成字符串,使用

$data['date']->toDateTimeString()

或者您可以自定义格式

$data['date']->format('Y/m/d H:i')