24 Nov Calendario PHP con días festivos
Calendario PHP con días festivos
En este post os voy a dejar el código de ¿Cómo programar un calendario PHP con días festivos?. En alguna ocasión haciendo un software en PHP os habéis encontrado que queréis poner un Calendario y que saque días festivos. Pues eso es con lo que me he encontrado yo. Si es día festivo que no salga un mensaje el cual diga que es día festivo al igual si es fin de semana. Pues hoy os voy a enseñar de la manera que yo lo desarrolle.
Calendario PHP con días festivos
- Nos creamos el array para recorrerlo y dividirlo.
$feriados = array(
‘1-1′, // Año Nuevo (irrenunciable)
’10-4′, // Viernes Santo (feriado religioso)
’11-4’, // Sábado Santo (feriado religioso)
‘1-5′, // Día Nacional del Trabajo (irrenunciable)
’21-5′, // Día de las Glorias Navales
’29-6′, // San Pedro y San Pablo (feriado religioso)
’16-7′, // Virgen del Carmen (feriado religioso)
’15-8′, // Asunción de la Virgen (feriado religioso)
’19-9′, // Dia Festivo De Prueba EN EL EJEMPLO <—–
’12-10′, // Aniversario del Descubrimiento de América
’31-10’, // Día Nacional de las Iglesias Evangélicas y Protestantes (feriado religioso)
‘1-11’, // Día de Todos los Santos (feriado religioso)
‘8-12′, // Inmaculada Concepción de la Virgen (feriado religioso)
’25-12’ // Natividad del Señor (feriado religioso) (irrenunciable)
);
//Separo la fecha de la hora
$Fecha_festivo_anual_date = date(‘d/m/y’);
//Fecha actual
$festivos_anuales = explode(«/», $Fecha_festivo_anual_date);
$dia_festivo_anuales = $festivos_anuales[0];
$mes_festivo_anuales = $festivos_anuales[1];
//echo «dia».$dia_festivo_anuales.»/».$mes_festivo_anuales.»<br>»;
$array_num = count($feriados);
for ($i = 0; $i < $array_num; ++$i){
//print «».$feriados[$i].»<br>»;
$dias_festivos_anuales = explode(«-«, $feriados[$i]);
$dia_festivo_anual_ = $dias_festivos_anuales[0];
$mes_festivo_anual_ = $dias_festivos_anuales[1];
//echo «dia array».$dia_festivo_anual_.»/».$mes_festivo_anual_.»<br>»;
if ($dia_festivo_anuales == $dia_festivo_anual_ && $mes_festivo_anuales == $mes_festivo_anual_ ) {
//echo » «.$dia_festivo_anuales.»= «.$dia_festivo_anual_.» / «.$mes_festivo_anuales.»= «.$mes_festivo_anual_.»<br>»;
$dia_festivo_anual = 1;
///echo «festivo»;
}
}
2.- Una vez tengamos el código de arriba vamos a evaluar que esa variable creada la tenemos a true.
if($dia[date(«w»)] == $sabado_sa || $dia[date(«w»)] == $domingo_do || $dia_festivo_anual == 1){
$semana_actual = «Hoy es finde o dia Festivo.»;
//echo «Buenos días, hoy es «.$dias[date(«w»)];
Vale ¿Y como sabemos si es fin de semana o no?
Vamos a ello:
- Nos creamos un array:
- $dia = array(«domingo»,»lunes»,»martes»,»miércoles»,»jueves»,»viernes»,»sabado»);
- Nos creamos las variables.
- $sabado = «sabado»;
$domingo = «domingo»;
$sabado_sa = $dia[6];
$domingo_do = $dia[0];
- $sabado = «sabado»;
- Ahora metemos la condición:
- if($dia[date(«w»)] == $sabado_sa || $dia[date(«w»)] == $domingo_do || $dia_festivo_anual == 1){
$semana_actual = «Hoy es finde o dia Festivo.»;
//echo «Buenos días, hoy es «.$dias[date(«w»)];
}
- if($dia[date(«w»)] == $sabado_sa || $dia[date(«w»)] == $domingo_do || $dia_festivo_anual == 1){
Y de esta manera tan simple habéis puesto si es festivo o es fin de semana otra cosa seria si lo queréis meter en BBDD y crear un campo imput con un modal popup que pida una fecha y hacer un Insert Into y desde allí evaluarlo.