PHP code example of castorland / hu-holidays

1. Go to this page and download the library: Download castorland/hu-holidays 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/ */

    

castorland / hu-holidays example snippets



Castorland\HUHolidays\Carbon;


re 'path/to/castorland/Carbon.php';

use Castorland\HUHolidays\Carbon;

$carbon = Carbon::create(2020, 1, 1);
$holidays = $carbon->getHolidaysByYear('all');

// [
//     {
//         "name": "Újév", // string
//         "date": "2020-01-01 00:00:00", // DateTime object
//         "bank_holiday": true, // boolean
//         "days_away": 0, // int
//     },
//     {
//      "name": "Vízkereszt, a farsang kezdete", // string
//      "date": "2020-01-06 00:00:00", // DateTime object
//      "bank_holiday": false, // boolean
//      "days_away": 5 // int
//     }
//     ...
// ]

$carbon = Carbon::create(2020, 5, 2);

$holidays = $carbon->getHolidaysInDays(300, 'all');
// or
$holidays = $carbon->getHolidaysInDays(300);

// [
//     {
//         "name": "A Nap napja", // string
//         "date": "2020-05-03 00:00:00", // DateTime object
//         "bank_holiday": false, // boolean
//         "days_away": 1 // int
//     }, {
//         "name": "Madarak és Fák Napja", // string
//         "date": "2020-05-10 00:00:00", // DateTime object
//         "bank_holiday": false, // boolean
//         "days_away": 8 // int
//     },
//     ...
// ]

$carbon = Carbon::create(2020, 8, 18);

$holidays = $carbon->getHolidaysInYears(1, 'all');
// or
$holidays = $carbon->getHolidaysInYears(1);

// [
//     {
//      "name": "Az államalapítás ünnepe", // string
//      "date": "2020-08-20 00:00:00", // DateTime object
//      "bank_holiday": true,// boolean
//      "days_away": 2 // int
//     }, {
//      "name": "Európai autómentes nap", // string
//      "date": "2020-09-22 00:00:00", // DateTime object
//      "bank_holiday": false, // boolean
//      "days_away": 35 // int
//     },
//     ...
// ]

$carbon = Carbon::create(2020, 1, 1);
$carbon->getBolondokNapjaHoliday();

// {
//    "name": "Bolondok napja",
//    "date": "2020-04-01 00:00:00",
//    "bank_holiday": false
//    "days_away": 91
// }

$carbon->getACivilekNapjaHoliday();
$carbon->getACsaladNemzetkoziNapjaHoliday();
$carbon->getAFoldNapja();
$carbon->getAHoldNapja();
$carbon->getAHolokausztNemzetkoziEmleknapjaHoliday();
$carbon->getAKinaiUjevKezdeteHoliday();
$carbon->getAMagyarKolteszetNapjaHoliday();
$carbon->getAMagyarKulturaNapjaHoliday();
$carbon->getAMehekNapjaHoliday();
$carbon->getAMeteorologiaiTavaszKezdeteHoliday();
$carbon->getAMunkaUnnepeHoliday();
$carbon->getANapNapjaHoliday();
$carbon->getANobelDijAlapitasanakNapjaHoliday();
$carbon->getAnyakNapjaHoliday();
$carbon->getApakNapjaHoliday();
$carbon->getAVallasokVilagnapjaHoliday();
$carbon->getAVilagirodalomNapjaHoliday();
$carbon->getAVizVilagnapjaHoliday();
$carbon->getAz1848asForradalomUnnepeHoliday();
$carbon->getAz1956osForradalomUnnepeHoliday();
$carbon->getAzAllamalapitasUnnepeHoliday();
$carbon->getAzAradiVertanukEmleknapjaHoliday();
$carbon->getAzEgeszsegVilagnapjaHoliday();
$carbon->getBlackFridayHoliday();
$carbon->getBolondokNapjaHoliday();
$carbon->getCyberMondayHoliday();
$carbon->getEnergiatakarekossagiVilagnapHoliday();
$carbon->getEuropaiAutomentesNapHoliday();
$carbon->getFoldunkertVilagnapHoliday();
$carbon->getGyerenapHoliday();
$carbon->getHalottakNapjaHoliday();
$carbon->getHamvazoszerdaHoliday();
$carbon->getHusvetHetfoHoliday();
$carbon->getKaracsonyHoliday();
$carbon->getKaracsonyMasnapHoliday();
$carbon->getKihivasNapjaHoliday();
$carbon->getKornyezetvedelmiVilagnapHoliday();
$carbon->getMadarakEsFakNapjaHoliday();
$carbon->getMedardNapjaHoliday();
$carbon->getMindenszentekHoliday();
$carbon->getNagyboldogasszonyNapjaHoliday();
$carbon->getNagypentekHoliday();
$carbon->getNemzetkoziFerfinapHoliday();
$carbon->getNemzetkoziPiNapHoliday();
$carbon->getNonapHoliday();
$carbon->getOszirozsasForradalomHoliday();
$carbon->getPunkosdHetfoHoliday();
$carbon->getRakellenesVilagnapHoliday();
$carbon->getRejtvenyfejtokVilagnapjaHoliday();
$carbon->getSemmelweisNapHoliday();
$carbon->getSzentesteHoliday();
$carbon->getSzilveszterHoliday();
$carbon->getUjevHoliday();
$carbon->getVizkeresztaFarsangKezdeteHoliday();

$carbon = new Carbon();
$carbon = Carbon::create(2018, 12, 25);
$carbon->isHoliday(); // bool (true)

$carbon = Carbon::create(2020, 1, 1); // Újév - Wednesday
$carbon->isBankHoliday(); // boolean (true)

$carbon = Carbon::create(2020, 1, 2);
$carbon->isBankHoliday(); // boolean (false)

$carbon = Carbon::create(2020, 03, 15); // Az 1848-as forradalom ünnepe
$carbon->isBankHoliday(); // boolean (false)

$carbon = Carbon::create(2018, 12, 25); // Karácsony - Tuesday
$carbon->isBankHoliday(); // boolean (true)

$carbon = Carbon::create(2016, 12, 25); // Karácsony - Sunday
$carbon->isBankHoliday(); // boolean (false)

$carbon = Carbon::create(2016, 12, 26); // Karácsony Másnap - Monday
$carbon->isBankHoliday(); // boolean (true)

$carbon = Carbon::create(2021, 12, 25); // Karácsony - Saturday
$carbon->isBankHoliday(); // boolean (false)

$carbon = Carbon::create(2021, 12, 24); // Szenteste - Friday
$carbon->isBankHoliday(); // boolean (false)

$carbon = Carbon::create(2018, 12, 31);
$carbon->getHolidayName(); // Szilveszter

$carbon = new Carbon();
$carbon->addHoliday([
    'name' => "A kockásfülű nyúl kezdete",
    'date' => Carbon::create(1977, 8, 26),
    'bank_holiday' => false
]);

$carbon->addHoliday([
    'name' => "SZJA Bevallás",
    'date' => function() use($carbon) {
        $q1 = Carbon::create($carbon->year, 5, 22, 0, 0, 0);
        if($q1->isBankHoliday()) {
            $q1->addDay();

            if($q1->isWeekend()) {
                $q1->next(Carbon::MONDAY);
            }
        }

        if($q1->isWeekend()) {
            $q1->next(Carbon::MONDAY);
        }

        if($q1 < $carbon) {
            $q1 = Carbon::create($carbon->year + 1, 5, 22, 0, 0, 0);

            if($q1->isBankHoliday()) {
                $q1->addDay();

                if($q1->isWeekend()) {
                    $q1->next(Carbon::MONDAY);
                }
            }

            if($q1->isWeekend()) {
                $q1->next(Carbon::MONDAY);
            }
        }

        if($q1->isBankHoliday()) {
            $q1->addDay();
        }

        return $q1;
    },
    'bank_holiday' => false
]);

$carbon = Carbon::create(2016, 12, 25); // Sunday
$carbon->getHolidayName(); // Karácsony

$carbon = Carbon::create(2016, 12, 26); // Monday
$carbon->getHolidayName(); // Karácsony Másnap