jquery Laravel 9计算分钟差异(已解决)

k5ifujac  于 2023-01-25  发布在  jQuery
关注(0)|答案(1)|浏览(104)

我有一个ID列、一个时间戳列和一个状态列,每次状态改变时,它都会在时间戳列中写入一个时间,我希望计算各种状态之间的时间差,例如,如果小于15分钟,则可以,如果大于15分钟,则不行,我如何才能自动化它?

<table>
<thead>
<tr>
<th>id</th>
<th>timestamp</th>
<th>states</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>2023-01-11 15:26:23</td>
<td>NotAvailable</td>
<td>2</td>
<td>2023-01-11 15:26:55</td>
<td>ToBeAssigned</td>
<td>3</td>
<td>2023-01-11 15:27:06</td>
<td>Assigned</td>
<td>3</td>
<td>2023-01-11 15:27:19</td>
<td>TakingCharge</td>
<td>4</td>
<td>2023-01-11 15:29:05</td>
<td>Closed</td>
</tr>
</tbody>
</table>
osh3o9ms

osh3o9ms1#

如果您使用碳,您应该看看diffInMinutes方法(阅读更多关于这里)
示例:

echo (new Carbon\Carbon('2023-01-11 15:26:23'))->diffInMinutes((new Carbon\Carbon('2023-01-11 15:28:55'))); // 2

如果你想用普通的PHP来做,请看下面的答案:https://stackoverflow.com/a/12382882/14714168

    • 更新日期:**

根据您提供的数据,我认为有一种方法可以获得它:

<table>
    <thead>
    <tr>
        <th>id</th>
        <th>timestamp</th>
        <th>states</th>
        <th>delay</th>
    </tr>
    </thead>
    <tbody>
    @foreach((array)$tickets_logs as $i => $ticket_log)
        <tr>
            <td>{{ $ticket_log['id'] }}</td>
            <td>{{ __($ticket_log['states']) }}</td>
            <td>{{ $ticket_log['time_stamp'] }}</td>
            <td>
                @if(!$loop->first)
                    {{ (new Carbon\Carbon($tickets_logs[$i - 1]['time_stamp']))->diffInMinutes((new Carbon\Carbon($ticket_log['time_stamp']))) }}
                @else
                    -
                @endif
            </td>
        </tr>
    @endforeach
    </tbody>
</table>

阅读更多关于循环变量

相关问题