Try Carbon

Options
BusinessTime::enable(Carbon::class, [ 'monday' => [ 'data' => [ 'remarks' => 'Extra evening on Monday', ], 'hours' => [ '09:00-12:00', '13:00-18:00', '19:00-20:00', ] ], // ... ]); $todayRanges = Carbon::getCurrentDayOpeningHours(); // Equivalent to Carbon::now()->getCurrentDayOpeningHours() // You can also get opening hours of any other day: Carbon::parse('2018-01-16')->getCurrentDayOpeningHours() echo "

Today office open hours

\n"; $data = $todayRanges->getData(); if (is_array($data) && isset($data['remarks'])) { echo "

{$data['remarks']}

\n"; } // $todayRanges is iterable on every time range of the day. foreach ($todayRanges as $range) { // TimeRange object have start, end and data properties but can also be implicitly converted as strings: echo "

\n"; } // $todayRanges can also be directly dumped as string echo "

$todayRanges

\n";