Boh... Ho pasticciato una funzione che ho trovato in questo forum...
Posto magari può servire a qualcuno e ottimizzarla.
Codice PHP:
// Ieri
$Yesterday = date('Y-m-d', strtotime( '-1 days' ) );
echo giorniLavorativi($Yesterday);
function giorniLavorativi($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 true;
}
if (in_array($Yesterday, $array_pasquetta)) {
return true;
}
if (in_array($Yesterday, $giorniFestivi)) {
return true;
}
return false;
} // fine funzione
Manca da fare un check ed escludere sabato e domenica. Qualora ieri non era festività la funzione torna null.