Skip to content
/ carbon Public

Helps you calculate which days are British bank holidays (England & Wales only).

License

Notifications You must be signed in to change notification settings

citco/carbon

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Carbon with support of UK Bank Holidays

This is a wrapper for Carbon which also calculates which days are British bank holidays (England & Wales only).

Installation

With Composer

$ composer require citco/carbon
{
    "require": {
        "citco/carbon": "*"
    }
}
<?php
require 'vendor/autoload.php';

use Citco\Carbon;

echo "Today is ", (new Carbon)->isBankHoliday() ?: "not bank holiday";

Without Composer

Why are you not using composer? Download Carbon.php from the repo and save the file into your project path somewhere. (You also need to download nesbot/carbon)

<?php
require 'path/to/nesbot/Carbon.php';
require 'path/to/citco/Carbon.php';

use Citco\Carbon;

echo "Today is ", (new Carbon)->isBankHoliday() ?: "not bank holiday";

Sample code

Here are some samples on using this class:

// Creates a new instance of the class
$c = new Carbon(); // Today's date
$c = new Carbon('2012-05-21'); // Date as string
$c = Carbon::parse('First day of May 2011');

// Checks if the given date is bank holiday
$boolean = $c->isBankHoliday('2016-05-21');
$boolean = $c->isBankHoliday(Carbon::parse('First day of 2000'));

// Returns array of holidays for the given year
$c->getBankHolidays(2015);
$c->getBankHolidays(array(2010, 2012));
$c->getBankHolidays(Carbon::now());

// Returns New Year date of the given year
$c->getNewYearBankHoliday(2012); // 2012-01-02

// Without any parameter will return date for the init year
$c->getNewYearBankHoliday();
$c->getGoodFridayBankHoliday();
$c->getEasterMondayBankHoliday();
$c->getEarlyMayBankHoliday();
$c->getSpringBankHoliday();
$c->getSummerBankHoliday();
$c->getBoxingDayBankHoliday();
$c->getChristmasBankHoliday();

// Returns next/previous bank holiday
$c->nextBankHoliday();
$c->previousBankHoliday();

$c->nextBankHoliday(Carbon::parse('Next year May 1st'));
$c->previousBankHoliday(Carbon::parse('Next year May 1st'));

// Returns N next/previous bank holidays
$n = 20;
$c->nextBankHolidays($n);
$c->previousBankHolidays($n);

$c->nextBankHolidays($n, Carbon::parse('Next year May 1st'));
$c->previousBankHolidays($n, Carbon::parse('Next year May 1st'));

// Returns the list of bank holidays between two dates
$start = Carbon::now();
$end = Carbon::now()->subYear(1);
$holidays = $start->bankHolidaysSince($end);

Issues

Bug reports and feature requests can be submitted on the Github Issue Tracker.

Requirements

PHP 8.1 or above (For older PHP versions, please use the version 1.x or 2.x of this package)

License

Bank Holidays is licensed under the MIT License - see the LICENSE file for details

About

Helps you calculate which days are British bank holidays (England & Wales only).

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages