Sistemato... Certo il codice non è il massimo...
Codice PHP:
$Yesterday = date('Y-m-d', strtotime( '-1 days' ) );
echo "Festività? ".isHoliday($Yesterday)."<br> ";
function isHoliday($Yesterday){
//anno attuale
$Year = date('Y');
$NextYear = date('Y', strtotime('+1 year'));
// Calcolo del giorno di Pasqua dall'anno attuale al prossimo
for ($i=$Year; $i<=$NextYear; $i++) {
$pasqua = date('Y-m-d', easter_date($i));
$array_pasqua[] = $pasqua;
}
//echo "<br> Pasqua <br> ";
//print_r ($array_pasqua);
// Calcolo le rispettive pasquette dall'anno attuale al prossimo
foreach($array_pasqua as $pasqua) {
list ($anno,$mese,$giorno) = explode('-',$pasqua);
$pasquetta = mktime (0,0,0,date($mese),date($giorno)+1,date($anno));
// Trasformo i risultati in timestamp in date
$array_pasquetta[] = date('Y-m-d', $pasquetta);
}
//echo "<br> Pasquette <br> ";
//print_r ($array_pasquetta);
// questi giorni son sempre festivi a prescindere dall'anno modello è mese-giorno
$giorniFestivi = array($Year.'-01-01', $Year.'-01-06', $Year.'-04-25', $Year.'-05-01', $Year.'-06-02',
$Year.'-08-15', $Year.'-11-01', $Year.'-12-08', $Year.'-12-25', $Year.'-12-26');
//echo "<br> Feste generali <br>";
//print_r ($giorniFestivi);
//echo "<br> Risultato Funzione<br> ";
if (in_array($Yesterday, $array_pasqua)) {
return 1;
}
if (in_array($Yesterday, $array_pasquetta)) {
return 1;
}
if (in_array($Yesterday, $giorniFestivi)) {
return 1;
}
// È weekend?
$Saturday="Saturday";
$Sunday="Sunday";
$giorno=date('l', strtotime($Yesterday));
if (strcmp($giorno, $Saturday) === 0) {
return 1;
}
if (strcmp($giorno, $Sunday) === 0) {
return 1;
}
return 0;
} // fine funzione