Mostra a quantidade dos dias da semana em intervalo
Publicado por Edmar Wantuil (última atualização em 25/01/2012)
[ Hits: 8.461 ]
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>
Consulta Amazon! Buscas na Web
Cria gráficos para monitoramento de consumo de CPU e Memória a partir de arquivos [Atualização].
FormConstructor: Formulário Construído por Variável
Transferir dados do Excel ou TXT para BD utilizando PHP
Trabalhando Nativamente com Logs no Linux
Jogando Daikatana (Steam) com Patch 1.3 via Luxtorpeda no Linux
LazyDocker – Interface de Usuário em Tempo Real para o Docker
Linux Mint: Zram + Swapfile em Btrfs
O widget do Plasma 6 Área de Notificação
Internet não funciona corretamente no Linux (1)
tentei instalar o steam pelo terminal, agora ele não abre (2)
Após todos esses anos... youtube! (4)









