{"id":1430,"date":"2019-03-08T14:04:56","date_gmt":"2019-03-08T17:04:56","guid":{"rendered":"https:\/\/www.franklinjr.com\/blog\/?p=1430"},"modified":"2019-03-08T14:10:40","modified_gmt":"2019-03-08T17:10:40","slug":"calculando-os-feriados-nacionais-com-php","status":"publish","type":"post","link":"https:\/\/www.franklinjr.com\/blog\/index.php\/2019\/03\/08\/calculando-os-feriados-nacionais-com-php\/","title":{"rendered":"Calculando os feriados nacionais com PHP"},"content":{"rendered":"\n<p>Abaixo uma fun\u00e7\u00e3o que calcula uma lista de feriados nacionais do ano corrente at\u00e9 2037. A m\u00e1gica dos feriados din\u00e2micos, que tem como base a p\u00e1scoa,  \u00e9 feita com a fun\u00e7\u00e3o easter_date() do PHP.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><pre lang=\"php\">\n<?\nfunction dias_feriados($ano = null){\n  if ($ano === null){\n    $ano = intval(date('Y'));\n  }\n\n  $pascoa     = easter_date($ano); \/\/ Limite entre 1970 a 2037 conforme \n http:\/\/www.php.net\/manual\/pt_BR\/function.easter-date.php\n  $dia_pascoa = date('j', $pascoa);\n  $mes_pascoa = date('n', $pascoa);\n  $ano_pascoa = date('Y', $pascoa);\n\n  $feriados = array(\n    \/\/ Datas Fixas dos feriados brasileiros\n    'Ano Novo' => mktime(0, 0, 0, 1,  1,   $ano), \/\/ Confraterniza\u00e7\u00e3o Universal - Lei n\u00ba 662, de 06\/04\/49\n    'Tiradentes' => mktime(0, 0, 0, 4,  21,  $ano), \/\/ Tiradentes - Lei n\u00ba 662, de 06\/04\/49\n    'Dia do Trabalhador' => mktime(0, 0, 0, 5,  1,   $ano), \/\/ Dia do Trabalhador - Lei n\u00ba 662, de 06\/04\/49\n    'Independ\u00eancia do Brasil' => mktime(0, 0, 0, 9,  7,   $ano), \/\/ Dia da Independ\u00eancia - Lei n\u00ba 662, de 06\/04\/49\n    'Nossa Senhora Aparecida' => mktime(0, 0, 0, 10,  12, $ano), \/\/ N. S. Aparecida - Lei n\u00ba 6802, de 30\/06\/80\n    'Finados' => mktime(0, 0, 0, 11,  2,  $ano), \/\/ Todos os santos - Lei n\u00ba 662, de 06\/04\/49\n    'Proclama\u00e7\u00e3o da Rep\u00fablica' => mktime(0, 0, 0, 11, 15,  $ano), \/\/ Proclama\u00e7\u00e3o da republica - Lei n\u00ba 662, de 06\/04\/49\n    'Natal' => mktime(0, 0, 0, 12, 25,  $ano), \/\/ Natal - Lei n\u00ba 662, de 06\/04\/49\n\n    \/\/ Essas datas dependem da p\u00e1scoa\n    'Segunda de Carnaval' => mktime(0, 0, 0, $mes_pascoa, $dia_pascoa - 48,  $ano_pascoa),\/\/2\u00baferia Carnaval\n    'Ter\u00e7a de Carnaval' => mktime(0, 0, 0, $mes_pascoa, $dia_pascoa - 47,  $ano_pascoa),\/\/3\u00baferia Carnaval\t\n    'Sexta-feira da Paix\u00e3o' => mktime(0, 0, 0, $mes_pascoa, $dia_pascoa - 2 ,  $ano_pascoa),\/\/6\u00bafeira Santa  \n    'P\u00e1scoa' => mktime(0, 0, 0, $mes_pascoa, $dia_pascoa     ,  $ano_pascoa),\/\/Pascoa\n    'Corpus Christi' => mktime(0, 0, 0, $mes_pascoa, $dia_pascoa + 60,  $ano_pascoa),\/\/Corpus Cirist\n  );\n\n  asort($feriados);\n  \n  return $feriados;\n}\n\n$ano_=date(\"Y\"); \/\/ano corrente\nfor($i=$ano_; $i <= 2037; $i++){\n\techo \"=========== ANO $i ===========\\n\";\n\tforeach(dias_feriados($i) as $descricao => $data){\n\t\techo date(\"d-m-Y\",$data).\" => $descricao\\n\";\n\t}\n\techo \"\\n\";\n}\n\n?>\n<\/pre><\/pre>\n\n\n\n<p>Peguei a base do c\u00f3digo de <a href=\"https:\/\/www.codigofonte.com.br\/codigos\/funcao-que-calcula-os-feriados-brasileiros-em-php\">https:\/\/www.codigofonte.com.br\/codigos\/funcao-que-calcula-os-feriados-brasileiros-em-php<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Abaixo uma fun\u00e7\u00e3o que calcula uma lista de feriados nacionais do ano corrente at\u00e9 2037. A m\u00e1gica dos feriados din\u00e2micos, que tem como base a p\u00e1scoa, \u00e9 feita com a fun\u00e7\u00e3o easter_date() do PHP. Peguei a base do c\u00f3digo de https:\/\/www.codigofonte.com.br\/codigos\/funcao-que-calcula-os-feriados-brasileiros-em-php<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[76,4],"tags":[],"class_list":["post-1430","post","type-post","status-publish","format-standard","hentry","category-php","category-coisas-uteis"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\r\n<title>Calculando os feriados nacionais com PHP - Franklin Jr.<\/title>\r\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\r\n<link rel=\"canonical\" href=\"https:\/\/www.franklinjr.com\/blog\/index.php\/2019\/03\/08\/calculando-os-feriados-nacionais-com-php\/\" \/>\r\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.franklinjr.com\/blog\/index.php\/2019\/03\/08\/calculando-os-feriados-nacionais-com-php\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"In\u00edcio\",\"item\":\"https:\/\/www.franklinjr.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Calculando os feriados nacionais com PHP\"}]}]}<\/script>\r\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Calculando os feriados nacionais com PHP - Franklin Jr.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.franklinjr.com\/blog\/index.php\/2019\/03\/08\/calculando-os-feriados-nacionais-com-php\/","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BreadcrumbList","@id":"https:\/\/www.franklinjr.com\/blog\/index.php\/2019\/03\/08\/calculando-os-feriados-nacionais-com-php\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"In\u00edcio","item":"https:\/\/www.franklinjr.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Calculando os feriados nacionais com PHP"}]}]}},"_links":{"self":[{"href":"https:\/\/www.franklinjr.com\/blog\/index.php\/wp-json\/wp\/v2\/posts\/1430","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.franklinjr.com\/blog\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.franklinjr.com\/blog\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.franklinjr.com\/blog\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.franklinjr.com\/blog\/index.php\/wp-json\/wp\/v2\/comments?post=1430"}],"version-history":[{"count":11,"href":"https:\/\/www.franklinjr.com\/blog\/index.php\/wp-json\/wp\/v2\/posts\/1430\/revisions"}],"predecessor-version":[{"id":1455,"href":"https:\/\/www.franklinjr.com\/blog\/index.php\/wp-json\/wp\/v2\/posts\/1430\/revisions\/1455"}],"wp:attachment":[{"href":"https:\/\/www.franklinjr.com\/blog\/index.php\/wp-json\/wp\/v2\/media?parent=1430"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.franklinjr.com\/blog\/index.php\/wp-json\/wp\/v2\/categories?post=1430"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.franklinjr.com\/blog\/index.php\/wp-json\/wp\/v2\/tags?post=1430"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}