Carbon:以小时格式拆分日期时间差异以秒为单位

问题描述

我正在寻找一种方法来划分差异并知道消耗了多少分钟,例如:

Date 1: 2021/06/30 10:20PM
Date 2: 2021/06/30 11:20PM

Expected result:
10 PM: 40min
11 PM: 20min

一个例子:

Date 1: 2021/06/30 9:54AM
Date 2: 2021/06/30 1:35PM

Expected result:
9AM: 6min
10AM: 60min
11AM: 60min
12PM: 60min
1 PM: 35min

caborn 有没有办法以这种格式输出?我唯一发现的是小时数的差异

$start  = new Carbon('2018-10-04 15:00:03');
$end    = new Carbon('2018-10-05 17:00:09');
$start->diff($end)->format('%H:%I:%s');
outputs = 02:00:06

解决方法

你可以使用这个....用你所有的例子测试

    $d1 = $temp = new Carbon('2021/06/30 10:20PM');
    $d2 = new Carbon('2021/06/30 11:20PM');

    $results = [];
    while ($temp->lt($d2)) {
        $m = 60-$temp->minute;
        if ((clone $temp)->addMinutes($m)->gt($d2)) {
            $m = $d2->minute;
        }
        $results[] = sprintf('%s: %smin',$temp->format('h a'),$m);
        $temp->addMinutes($m);
    }
,
echo $start->diffAsCarbonInterval($end)->totalMinutes;

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...