PHP Script Snippet (only one holiday):
<?PHP
function calculateBankHolidays($yr) {
$bankHols = Array();
// New year's:
switch ( date("w", strtotime("01-01-$yr 12:00:00")) ) {
case 6:
$bankHols[] = "03-01-$yr";
break;
case 0:
$bankHols[] = "02-01-$yr";
break;
default:
$bankHols[] = "01-01-$yr";
}
// Good friday:
$bankHols[] = date("d-m-y", strtotime( "+".(easter_days($yr) - 2)." days", strtotime("21-03-$yr 12:00:00") ));
// Easter Monday:
$bankHols[] = date("d-m-y", strtotime( "+".(easter_days($yr) + 1)." days", strtotime("21-03-$yr 12:00:00") ));
// May Day:
if ($yr == 1995) {
$bankHols[] = "08-05-1995"; // VE day 50th anniversary year exception
} else {
switch (date("w", strtotime("01-05-$yr 12:00:00"))) {
case 0:
$bankHols[] = "02-05-$yr";
break;
case 1:
$bankHols[] = "01-05-$yr";
break;
case 2:
$bankHols[] = "07-05-$yr";
break;
case 3:
$bankHols[] = "06-05-$yr";
break;
case 4:
$bankHols[] = "05-05-$yr";
break;
case 5:
$bankHols[] = "04-05-$yr";
break;
case 6:
$bankHols[] = "03-05-$yr";
break;
}
}
return $bankHols;
}
header('Content-Type: application/json');
$bankHolsThisYear = calculateBankHolidays(2017);
echo (json_encode($bankHolsThisYear, JSON_PRETTY_PRINT));
?>
Result:
[
"02-01-2017",
"14-04-17",
"17-04-17",
"01-05-2017",
"2017-05-29",
"2017-08-28",
"2017-12-25",
"2017-12-26"
]
Shows current full scripts results
Desired Outcome:
{
"Holiday Name": {
"Start Date": ,
"End Date": ,
"Holiday type": ,
"Where it is observed": ,
},
Questions:
- How do I add a "Holiday Name" to the parent of each value?
- How do I add "Start Date" to each current value?