Mostra a quantidade dos dias da semana em intervalo
Publicado por Edmar Wantuil (última atualização em 25/01/2012)
[ Hits: 8.155 ]
Homepage: wantuil.com
Boa tarde acabei de escrever esse código, que irá me ajudar em um cálculo estatístico. Espero que possa ajuda a outras pessoas também.
Esse código exibi a quantidade de cada dia da semana em um intervalo. Por exemplo:
Se digitarmos 01/01/2012 a 31/12/2012 ele exibirá:
Dia Quantidade
Domingo 53
Segunda-Feira 53
Terça-Feira 52
Quarta-Feira 52
Quinta-Feira 52
Sexta-Feira 52
Sábado 52
Sei que é bem simples mas pode ser útil de várias formas :-).
Estou totalmente aberto a críticas amigos, sei que com elas poderei evoluir.
<? //Retona a data em linux function data_unix($data) { $data= split("/", $data); return mktime(0,0,0,$data[1],$data[0],$data[2]); } //Adiciona um dia a data function somadia($data) { $data= split("/", $data); return date("d/m/Y",mktime(0,0,0,$data[1],$data[0] + 1,$data[2])); } //Retorna o numero do dia da semana function dia_semana($data) { $dia= date("w", data_unix($data)); return $dia; } ?> <html> <head> <title>Dias semana</title> <meta http-equiv="Content-Type" content ="text/html; charset=UTF-8" /> <script language="JavaScript"> function valData(e,campo) { var tecla=(window.event)?event.keyCode:e.which; if( (tecla > 47) && (tecla < 58) ) { mascara(campo, '##/##/####'); return true; } else { if (tecla != 8 ) return false; else return true; } } function mascara(campo, mascara) { var i = campo.value.length; var saida= mascara.substring(1,2); var texto= mascara.substring(i); if (texto.substring(0,1) != saida) campo.value += texto.substring(0,1); } </script> </head> <body> <form method="GET" action="index.php" > <b>Inicio:</b> <input type = 'text' name = 'inicio' size = '10' maxlength = '10' onkeypress= 'return valData(event,this);return false;' > <b>Fim:</b> <input type = 'text' name = 'fim' size = '10' maxlength = '10' onkeypress= 'return valData(event,this);return false;' > <input type ="submit" value="Calcular" > </form> <? //verifica se foi informado algo if($_GET['inicio'] || $_GET['fim']) { $inicio = $_GET['inicio']; $fim = $_GET['fim']; $semana[0]['nome'] = "Domingo"; $semana[0]['quatidade']= 0; $semana[1]['nome'] = "Segunda-Feira"; $semana[1]['quatidade']= 0; $semana[2]['nome'] = "Terça-Feira"; $semana[2]['quatidade']= 0; $semana[3]['nome'] = "Quarta-Feira"; $semana[3]['quatidade']= 0; $semana[4]['nome'] = "Quinta-Feira"; $semana[4]['quatidade']= 0; $semana[5]['nome'] = "Sexta-Feira"; $semana[5]['quatidade']= 0; $semana[6]['nome'] = "Sábado"; $semana[6]['quatidade']= 0; ?> <table border='1'> <tr> <td>Dia</td> <td>Quatidade</td> </tr> <? $data= $inicio; while(data_unix($fim) >= data_unix($data)) { //busca o dia da semana $temp= dia_semana($data); //incrementa um dia ao dia da semana $semana[$temp]['quatidade']++; //incrementa um dia a data $data= somadia($data); } $cont= 0; //exibi resultado while(sizeof($semana) > $cont) { echo " <tr> <td>".$semana[$cont]['nome']."</td> <td>".$semana[$cont]['quatidade']."</td> </tr> "; $cont++; } ?> </table> <? } ?> </body> </html>
Cron - Classe PHP para cálculo da diferença entre duas datas
Instalar e Configurar o Slackware Linux em 2025
Como configurar os repositórios do apt no Debian 12 em 2025
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Configurando o Conky para iniciar corretamente no sistema
3 configurações básicas que podem melhorar muito a sua edição pelo editor nano
Como colorir os logs do terminal com ccze
Instalação Microsoft Edge no Linux Mint 22
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
Ingress NGINX Controller CVSS base score of 9.8 (2)
Impossível corrigir problemas, você manteve (hold) pacotes quebrados. (2)
Linux Mint não conecta Wi-Fi sem fio (18)