Fechas Vigentes Año: 2018

= $anno)"; $res = mysql_query($sql); $lin = 0; while ($row = mysql_fetch_array($res)) { $feriado[$lin]["n"] = htmlentities($row["descripcion"], ENT_COMPAT, "ISO-8859-1"); $feriado[$lin]["ley"] = $row["ley"]; $feriado[$lin]["f"] = $row["feriado"]; if ($row["mes"] == 0) { $fecha = mktime(0, 0, 0, $pascua_mes, $pascua_dia + $row["dia"], $anno); $feriado[$lin]["m"] = date("n", $fecha); $feriado[$lin]["d"] = date("d", $fecha); } else { $feriado[$lin]["m"] = $row["mes"]; $feriado[$lin]["d"] = $row["dia"]; } if ($row["movil"] == 'L') { // Hay que mover al lunes... $fecha = mktime(0, 0, 0, $feriado[$lin]["m"], $feriado[$lin]["d"], $anno); $dias = date('w', $fecha); if ($dias >= 2 && $dias < 5) { // Si es de martes a jueves, se mueve al lunes anterior. $dias--; $dias = -$dias; } elseif ($dias == 5) { // Si es viernes, se mueve al lunes siguiente $dias = 3; } else { // Si es sábado o domingo, queda igual... $dias = 0; } $fecha = mktime(0, 0, 0, $feriado[$lin]["m"], $feriado[$lin]["d"] + $dias, $anno); $feriado[$lin]["m"] = date("n", $fecha); $feriado[$lin]["d"] = date("d", $fecha); } elseif ($row["movil"] == 'D') { // n-esimo domingo... $fecha = mktime(0, 0, 0, $feriado[$lin]["m"], 1, $anno); $feriado[$lin]["d"] = date("w", $fecha) > 0 ? $feriado[$lin]["d"] * 7 - date('w', $fecha) : ($feriado[$lin]["d"] - 1) * 7; $feriado[$lin]["d"]++; $feriado[$lin]["m"] = date("n", $fecha); } elseif ($row["movil"] == '1') { // Si es lunes, es feriado... $fecha = mktime(0, 0, 0, $feriado[$lin]["m"], $feriado[$lin]["d"], $anno); $dias = date('w', $fecha); if ($dias != 1) { $lin--; // si no, no cuenta... } } elseif ($row["movil"] == '5') { // Si es viernes, es feriado... $fecha = mktime(0, 0, 0, $feriado[$lin]["m"], $feriado[$lin]["d"], $anno); $dias = date('w', $fecha); if ($dias != 5) { $lin--; // si no, no cuenta... } } elseif ($row["movil"] == 'M') { // Si es lunes, jueves, viernes o sábado se mantiene. // Si es martes, al viernes anterior. Si es miércoles al viernes siguiente (31 de octubre) $fecha = mktime(0, 0, 0, $feriado[$lin]["m"], $feriado[$lin]["d"], $anno); $dias = date('w', $fecha); if ($dias == 2) { $feriado[$lin]["d"] = 27; } elseif ($dias == 3) { $feriado[$lin]["d"] = 2; $feriado[$lin]["m"] = 11; } } $lin++; } Mysql_free_result($res); for ($i = $lin - 1; $i > 0; $i--) for ($j = $i - 1; $j >= 0; $j--) if (($feriado[$i]["m"] < $feriado[$j]["m"]) || ($feriado[$i]["m"] == $feriado[$j]["m"] && $feriado[$i]["d"] < $feriado[$j]["d"])) { $aux = $feriado[$i]["m"]; $feriado[$i]["m"] = $feriado[$j]["m"]; $feriado[$j]["m"] = $aux; $aux = $feriado[$i]["d"]; $feriado[$i]["d"] = $feriado[$j]["d"]; $feriado[$j]["d"] = $aux; $aux = $feriado[$i]["n"]; $feriado[$i]["n"] = $feriado[$j]["n"]; $feriado[$j]["n"] = $aux; $aux = $feriado[$i]["f"]; $feriado[$i]["f"] = $feriado[$j]["f"]; $feriado[$j]["f"] = $aux; $aux = $feriado[$i]["ley"]; $feriado[$i]["ley"] = $feriado[$j]["ley"]; $feriado[$j]["ley"] = $aux; } ?>
NombreFechaFeriadoLey
Año Anterior - Formato Calendario - Año Siguiente