编程

使用Laravel Hours Helper包生成时间间隔

1644 2022-01-08 17:30:11

使用 Laravel Hours Helper 扩展包,你可以在指定的时间周期以特定的时间间隔(分钟)创建一个日期/时间集合。

use Facades\Label84\HoursHelper\HoursHelper;
 
$hours = HoursHelper::create('08:00', '09:30', 30);
/*
=> Illuminate\Support\Collection {#3529
       all: [
           "08:00",
           "08:30",
           "09:00",
           "09:30",
       ],
   }
*/

这个 helper 可以用生来会成下拉框日历/日程表, 同时允许你为每个时间间隔定义日期格式:

$hours = HoursHelper::create('11:00', '13:00', 60, 'g:i A');
/*
Illuminate\Support\Collection {#3528
    all: [
        "11:00 AM",
        "12:00 PM",
        "1:00 PM",
    ],
}
*/

另外,它还能处理日期跨的时间间隔:

HoursHelper::create(
    '2021-01-01 22:00',
    '2021-01-03 13:00',
    60,
    'Y-m-d H:i'
);
/*
Illuminate\Support\Collection {#3566
    all: [
        "2021-01-01 22:00",
        "2021-01-01 23:00",
        "2021-01-02 00:00",
        "2021-01-02 01:00",
        "2021-01-02 02:00",
        ...
    ]
}
*/

Github源码:https://github.com/Label84/laravel-hours-helper