PHP code example of sourcebox / opening-hours

1. Go to this page and download the library: Download sourcebox/opening-hours library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

sourcebox / opening-hours example snippets


$timeTable = new TimeTable([
   new Day(Day::MONDAY, [
       new TimePeriod('08:00', '12:00'),
       new TimePeriod('13:00', '17:00'),
   ]),
   new Day(Day::TUESDAY, [
       new TimePeriod('08:00', '12:00'),
       new TimePeriod('13:00', '17:00'),
   ]),
   new Day(Day::WEDNESDAY, [
       new TimePeriod('08:00', '12:00'),
       new TimePeriod('13:00', '17:00'),
   ]),
   new Day(Day::THURSDAY, [
       new TimePeriod('08:00', '12:00'),
       new TimePeriod('13:00', '17:00'),
   ]),
   new Day(Day::FRIDAY, [
       new TimePeriod('08:00', '12:00'),
       new TimePeriod('13:00', '17:00'),
   ]),
   new Day(Day::SATURDAY, [
       new TimePeriod('08:00', '12:00'),
   ]),
]);

$checker = new OpeningHourChecker($timeTable);

$checker->isOpenOn(Day::TUESDAY); // true
$checker->isClosedOn(Day::TUESDAY); // false

$checker->isOpenAt(\DateTime::createFromFormat('Y-m-d H:i:s', '2016-10-10 10:00:00'))); // returns true
$checker->isClosedAt(\DateTime::createFromFormat('Y-m-d H:i:s', '2016-10-10 10:00:00'))); // returns false

$dateOverride = new DateOverride($christmasDateTime);
$dateOverride->setType(OverrideInterface::TYPE_EXCLUDE);

$openingHourChecker->addOverride($dateOverride);
$openingHourChecker->isOpenAt($christmasDateTime); // return false

$holidayPeriodStart = \DateTime::createFromFormat('Y-m-d H:i:s', '2017-01-01 00:00:00', $timezone);
$holidayPeriodEnd = \DateTime::createFromFormat('Y-m-d H:i:s', '2017-01-10 00:00:00', $timezone);
$holidayPeriod = new DatePeriodOverride($holidayPeriodStart, $holidayPeriodEnd);
$holidayPeriod->setType(OverrideInterface::TYPE_EXCLUDE);

$openingHourChecker->addOverride($holidayPeriod);