Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Opening Hours Laravel Package

spatie/opening-hours

Define and query business opening hours with weekly schedules and exceptions. Check if a date/time is open or closed, get next open/close times, and format hours per day. Integrates with Carbon via cmixin/business-time for date-based queries.

View on GitHub
Deep Wiki
Context7
4.2.1
4.2.0

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/opening-hours/compare/4.1.3...4.2.0

4.1.3

What's Changed

Full Changelog: https://github.com/spatie/opening-hours/compare/4.1.2...4.1.3

4.1.1
4.1.0

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/opening-hours/compare/4.0.3...4.1.0

4.0.3

What's Changed

Full Changelog: https://github.com/spatie/opening-hours/compare/4.0.2...4.0.3

4.0.2

What's Changed

Full Changelog: https://github.com/spatie/opening-hours/compare/4.0.1...4.0.2

4.0.1

What's Changed

  • Allow date without year in validFrom/validTo structured data

Full Changelog: https://github.com/spatie/opening-hours/compare/4.0.0...4.0.1

4.0.0

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/opening-hours/compare/3.0.0...4.0.0

3.0.0
  • Add Time::date() method
  • Add DateTimeRange class
  • Add ranges support via to or - separator
  • Deprecate fill() and setData()
  • Remove setFilters()
  • Drop PHP < 7.4
2.41.0

Cap holidays check to end date when calculating diff

2.13.0

Make comparison microsecond-precise

2.12.0

Apply timezone for all methods and both input/output

2.11.3

Copy non immutable dates to apply timezone

2.11.2

Add array-shape create() PHPDoc

2.11.1

Support PHP 8.1

2.11.0

Add dateTimeClass option to use other class for date objects

2.10.1

mergeOverlappingRanges now properly handle hours for each hour or encapsulating a list of hours.

2.10.0

mergeOverlappingRanges now handles "hours" key and clean "data" keys before merging ranges

2.9.1
  • Use OpeningHours timezone for isOpenOn()
2.9.0

Allow isOpenOn() to take date string as parameter

2.7.2

Fix support of data/filters/overflow with OpeningHours::createAndMergeOverlappingRanges and OpeningHours::mergeOverlappingRanges

2.7.1

Add InvalidTimezone exception

2.7.0

Add forWeekConsecutiveDays method

2.5.0

#128 Allow un-ordered ranges

2.4.1

#121 Allow to pass timezone in TimeRange::format

2.4.0

#121 Allow custom format and timezone in asStructuredData()

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
davejamesmiller/laravel-breadcrumbs
artisanry/parsedown
christhompsontldr/phpsdk
enqueue/dsn
bunny/bunny
enqueue/test
enqueue/null
enqueue/amqp-tools
milesj/emojibase
bower-asset/punycode
bower-asset/inputmask
bower-asset/jquery
bower-asset/yii2-pjax
laravel/nova
spatie/laravel-mailcoach
spatie/laravel-superseeder
laravel/liferaft
nst/json-test-suite
danielmiessler/sec-lists
jackalope/jackalope-transport