如何显示两次之间的所有时间段

我有一个 Laravel 应用程序,我需要根据 15 分钟的间隔显示上午 9 点到凌晨 3 点之间的所有时间段。时间段不包含日期,只有时间格式,如(AM 和 PM)

回答

你碳 CarbonPeriod

use CarbonCarbonPeriod;


$period = new CarbonPeriod('03:00', '15 minutes', '14:00'); // for create use 24 hours format later change format 
$slots = [];
foreach($period as $item){
    array_push($slots,$item->format("h:i A"));
}

return $slots;

根据您的要求。你需要像这样使用


$today =  today()->format('Y-m-d') . " 2:00 PM";
$tomorrow =  today()->addDays('1')->format('Y-m-d')  . " 3:00 AM";
$period = new CarbonPeriod(new Carbon($today), '15 minutes', new Carbon($tomorrow));
$slots = [];
foreach ($period as $item) {
    array_push($slots, $item->format("h:i A"));
}

它重新运行

[
    "02:00 PM",
    "02:15 PM",
    "02:30 PM",
    "02:45 PM",
    "03:00 PM",
    "03:15 PM",
    "03:30 PM",
    "03:45 PM",
    "04:00 PM",
    "04:15 PM",
    "04:30 PM",
    "04:45 PM",
    "05:00 PM",
    "05:15 PM",
    "05:30 PM",
    "05:45 PM",
    "06:00 PM",
    "06:15 PM",
    "06:30 PM",
    "06:45 PM",
    "07:00 PM",
    "07:15 PM",
    "07:30 PM",
    "07:45 PM",
    "08:00 PM",
    "08:15 PM",
    "08:30 PM",
    "08:45 PM",
    "09:00 PM",
    "09:15 PM",
    "09:30 PM",
    "09:45 PM",
    "10:00 PM",
    "10:15 PM",
    "10:30 PM",
    "10:45 PM",
    "11:00 PM",
    "11:15 PM",
    "11:30 PM",
    "11:45 PM",
    "12:00 AM",
    "12:15 AM",
    "12:30 AM",
    "12:45 AM",
    "01:00 AM",
    "01:15 AM",
    "01:30 AM",
    "01:45 AM",
    "02:00 AM",
    "02:15 AM",
    "02:30 AM",
    "02:45 AM",
    "03:00 AM"
]

参考链接https://carbon.nesbot.com/docs/#api-period


以上是如何显示两次之间的所有时间段的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>