calcular qtas vezes aparece uma palavra em uma coluna
05/02/2018
0
Bom dia Srs,
eu qro descobrir qtos dias uteis há entre 2 datas e para isso...
eu consegui expor todas as datas entre 2 datas (ex.: 05/02/2018 à 15/02/2018) e ficaria assim(05/02/2018 06/02/2018 07/02/2018 ... 15/02/2018)
e descrevi o dia da semana que representa(05/02/2018 seg 06/02/2018 ter 07/02/2018 qua ... 15/02/2018 qui)
agora eu qria saber qtas vezes aparecem o sabado e domingo.
se puderem me ajudar
o script ficou assim:
<td>
<?php
$data_dia = substr('05/02/2018', 0, 2);
$data_mes = substr('05/02/2018', 3, 2);
$data_ano = substr('05/02/2018', -4);
$dat_out_dia = substr('15/02/2018', 0, 2);
$dat_out_mes = substr('15/02/2018', 3, 2);
$dat_out_ano = substr('15/02/2018', -4);
$data_1=$data_ano.'-'.$data_mes.'-'.$data_dia;
$data_2=$dat_out_ano.'-'.$dat_out_mes.'-'.$dat_out_dia;
$start = new \\DateTime($data_1);
$end = new \\DateTime($data_2);
$periodArr = new \\DatePeriod($start , new \\DateInterval('P1D') , $end);
foreach($periodArr as $period) {
$periodo2=$period->format('d/m/Y');
$periodo2a=$period->format('w').'<br />';
echo $periodo2; ?> <?php // echo $periodo2a;
if($period->format('w') == 0) { echo 'domingo' . '<br>';} else {};
if($period->format('w') == 1) { echo 'segunda' . '<br>';} else {};
if($period->format('w') == 2) { echo 'terça' . '<br>';} else {};
if($period->format('w') == 3) { echo 'quarta' . '<br>';} else {};
if($period->format('w') == 4) { echo 'quinta' . '<br>';} else {};
if($period->format('w') == 5) { echo 'sexta' . '<br>';} else {};
if($period->format('w') == 6) { echo 'Sábado' . '<br>';} else {};
$domingos=substr_count($periodo2a, '6'); //0 segunda 1terca 2quarta 3quin 4sexta 5sabado 6 domingo
?> qtd de domingo: <?php echo $domingos; ?> - <?php
?> qtd de fds: ???????? <?php echo $fds; ?> - <?php
?>
<?php
}
//data de término
//echo $end->format('d/m/Y');
$end2=$end->format('d/m/Y');
$end2a=$end->format('w');
//echo $end2;
$end2a=$end->format('w');
echo $end2; echo $end2a; ?> <?php // echo $periodo2a;
if($end->format('w') == 0) { echo 'domingo' . '<br>';} else {};
if($end->format('w') == 1) { echo 'segunda' . '<br>';} else {};
if($end->format('w') == 2) { echo 'terça' . '<br>';} else {};
if($end->format('w') == 3) { echo 'quarta' . '<br>';} else {};
if($end->format('w') == 4) { echo 'quinta' . '<br>';} else {};
if($end->format('w') == 5) { echo 'sexta' . '<br>';} else {};
if($end->format('w') == 6) { echo 'Sábado' . '<br>';} else {};
//echo substr_count($end2a, '0');
$domingos2=substr_count($end2a, '6');
?> qtd de domingo: <?php echo $domingos2; ?> - <?php
?> qtd de fds: ???????? <?php echo $fds; ?> - <?php
?>
?> qtd de fds total(do do inicio e do range até a ultima data): ???????? <?php echo $fds_total; ?> - <?php
</td>
eu qro descobrir qtos dias uteis há entre 2 datas e para isso...
eu consegui expor todas as datas entre 2 datas (ex.: 05/02/2018 à 15/02/2018) e ficaria assim(05/02/2018 06/02/2018 07/02/2018 ... 15/02/2018)
e descrevi o dia da semana que representa(05/02/2018 seg 06/02/2018 ter 07/02/2018 qua ... 15/02/2018 qui)
agora eu qria saber qtas vezes aparecem o sabado e domingo.
se puderem me ajudar
o script ficou assim:
<td>
<?php
$data_dia = substr('05/02/2018', 0, 2);
$data_mes = substr('05/02/2018', 3, 2);
$data_ano = substr('05/02/2018', -4);
$dat_out_dia = substr('15/02/2018', 0, 2);
$dat_out_mes = substr('15/02/2018', 3, 2);
$dat_out_ano = substr('15/02/2018', -4);
$data_1=$data_ano.'-'.$data_mes.'-'.$data_dia;
$data_2=$dat_out_ano.'-'.$dat_out_mes.'-'.$dat_out_dia;
$start = new \\DateTime($data_1);
$end = new \\DateTime($data_2);
$periodArr = new \\DatePeriod($start , new \\DateInterval('P1D') , $end);
foreach($periodArr as $period) {
$periodo2=$period->format('d/m/Y');
$periodo2a=$period->format('w').'<br />';
echo $periodo2; ?> <?php // echo $periodo2a;
if($period->format('w') == 0) { echo 'domingo' . '<br>';} else {};
if($period->format('w') == 1) { echo 'segunda' . '<br>';} else {};
if($period->format('w') == 2) { echo 'terça' . '<br>';} else {};
if($period->format('w') == 3) { echo 'quarta' . '<br>';} else {};
if($period->format('w') == 4) { echo 'quinta' . '<br>';} else {};
if($period->format('w') == 5) { echo 'sexta' . '<br>';} else {};
if($period->format('w') == 6) { echo 'Sábado' . '<br>';} else {};
$domingos=substr_count($periodo2a, '6'); //0 segunda 1terca 2quarta 3quin 4sexta 5sabado 6 domingo
?> qtd de domingo: <?php echo $domingos; ?> - <?php
?> qtd de fds: ???????? <?php echo $fds; ?> - <?php
?>
<?php
}
//data de término
//echo $end->format('d/m/Y');
$end2=$end->format('d/m/Y');
$end2a=$end->format('w');
//echo $end2;
$end2a=$end->format('w');
echo $end2; echo $end2a; ?> <?php // echo $periodo2a;
if($end->format('w') == 0) { echo 'domingo' . '<br>';} else {};
if($end->format('w') == 1) { echo 'segunda' . '<br>';} else {};
if($end->format('w') == 2) { echo 'terça' . '<br>';} else {};
if($end->format('w') == 3) { echo 'quarta' . '<br>';} else {};
if($end->format('w') == 4) { echo 'quinta' . '<br>';} else {};
if($end->format('w') == 5) { echo 'sexta' . '<br>';} else {};
if($end->format('w') == 6) { echo 'Sábado' . '<br>';} else {};
//echo substr_count($end2a, '0');
$domingos2=substr_count($end2a, '6');
?> qtd de domingo: <?php echo $domingos2; ?> - <?php
?> qtd de fds: ???????? <?php echo $fds; ?> - <?php
?>
?> qtd de fds total(do do inicio e do range até a ultima data): ???????? <?php echo $fds_total; ?> - <?php
</td>
Paulo Silva
Curtir tópico
+ 0
Responder
Post mais votado
05/02/2018
Instância um contador, e coloca um if que toda a vez que o sabado e o domingo aparecem no intervalo ele incrementa.
Tipo:
Outra coisa, uma dica: em PHP você não necessita usar o "else" no "if" se ele for vazio, ao invés de usar:
use:
diminui uns caracteres do código, mas é só uma dica, não uma critica. :D
Tipo:
<?php int numDom = 0; int numSab = 0; if($end->format('w')=="0"){ numDom++; } if($end->format('w')=="6"){ numSab++; } ?>
Outra coisa, uma dica: em PHP você não necessita usar o "else" no "if" se ele for vazio, ao invés de usar:
if($end->format('w') == 0) { echo 'domingo' . '<br>';} else {};
use:
if($end->format('w') == 0) { echo 'domingo' . '<br>';}
diminui uns caracteres do código, mas é só uma dica, não uma critica. :D
Alex William
Responder
Mais Posts
05/02/2018
Paulo Silva
Boa noite Alekym,
incrementei oq sugeriu ,mas n sei se fiz certo, acredito que n..pq n funcionou...rs
,será que poderia ja colocar no meu script pra eu ver como fica(na integra)...
Obgd pela ajuda...
incrementei oq sugeriu ,mas n sei se fiz certo, acredito que n..pq n funcionou...rs
,será que poderia ja colocar no meu script pra eu ver como fica(na integra)...
Obgd pela ajuda...
Responder
Clique aqui para fazer login e interagir na Comunidade :)