dsisconeto/business-day-calculator

0.0.6 2018-12-13 11:53 UTC

This package is auto-updated.

Last update: 2024-09-14 00:52:23 UTC


README

Install via composer

composer require dsisconeto/business-day-calculator

How to use

use DSisconeto\BusinessDayCalculator\BusinessDayPolicy;
use DSisconeto\BusinessDayCalculator\BusinessDaysCalculator;
use DSisconeto\BusinessDayCalculator\DayOfWeek;

$businessDayPolicy = new BusinessDayPolicy();
$businessDayCalculator = new BusinessDaysCalculator($businessDayPolicy);
$businessDayPolicy->setIgnoreDaysOfWeek([DayOfWeek::SUNDAY, DayOfWeek::SATURDAY])
    ->addHolidays([new DateTime('2018-11-02'), new DateTime('2018-11-15')]);

$startAt = new DateTime('2018-11-01');
$endAt = new DateTime('2018-11-30');
$datesWithAdditional = $businessDayCalculator->fromDateEnd($startAt, $endAt, true);
$dates = $businessDayCalculator->fromDateEnd($startAt, $endAt, false);

var_dump($datesWithAdditional);
var_dump($dates);
use DSisconeto\BusinessDayCalculator\BusinessDayPolicy;
use DSisconeto\BusinessDayCalculator\BusinessDaysCalculator;
use DSisconeto\BusinessDayCalculator\DayOfWeek;

$businessDayPolicy = new BusinessDayPolicy();
$businessDayCalculator = new BusinessDaysCalculator($businessDayPolicy);
$businessDayPolicy->setIgnoreDaysOfWeek([DayOfWeek::SUNDAY, DayOfWeek::SATURDAY])
    ->addHolidays([new DateTime('2018-11-02'), new DateTime('2018-11-15')]);

$startAt = new DateTime('2018-11-01');
$datesWithAdditional = $businessDayCalculator->fromDays($startAt, 30, true);
$dates = $businessDayCalculator->fromDays($startAt, 30, false);
var_dump($datesWithAdditional);
var_dump($dates);