Pessoal,
preciso popular uma tabela com datas existentes em um intervalo de datas...
Exemplo:
Data Inicial: 01/01/2012
Data Final: 12/01/2012
O script deve inserir no banco o seguinte resultado:
01/01/2012
02/01/2012
03/01/2012
04/01/2012
05/01/2012
06/01/2012
07/01/2012
08/01/2012
09/01/2012
10/01/2012
11/01/2012
12/01/2012
Mas só pode inserir se ainda não existe esta data já gravada.
Alguém pode me ajudar?
PS: Tabela = datas Campo = data
Gerar Datas De Um Intervalo
Started By brilhantetk, 09/09/2012, 23:19
1 reply to this topic
#1
Posted 09/09/2012, 23:19
Rafael Coimbra Brilhante
Desenvolvedor PHP
e-mail/MSN: brilhantetk@gmail.com
Fone: (51) 8411 5995
São Leopoldo - RS - Brasil
Desenvolvedor PHP
e-mail/MSN: brilhantetk@gmail.com
Fone: (51) 8411 5995
São Leopoldo - RS - Brasil
#2
Posted 29/05/2013, 11:37
Um "pouco" atrasado, mas cheguei nesse tópico através do Google hoje, e acabei achando a solução e por gostar do fórum, e para outras pessoas que caírem no tópico... aqui vai minha solução
$dtIni = 'xxxx-xx-xx'; $dtFim= 'xxxx-xx-xx'; $meses = diferencaData($dtIni,$dtFim,'M');//no caso caluculei a diferença de meses for($i=0;$i<$meses;$i++){//fiz um loop para os meses do periodo echo strtotime("$dtIni+$i month");//e fui adicionando meses de acordo com o contador i, na data incio } /* Referências validas para calculo de data php: mais referencias consulte o manual na função strtotime //adiciona um dia echo strtotime("+1 day"); //adiciona uma semana echo strtotime("+1 week"); //adiciona um mês echo strtotime("+1 month"); //adiciona um ano echo strtotime("+1 year"); */ function diferencaData($d1, $d2, $type='D', $sep='-') { $d1 = explode($sep, $d1); $d2 = explode($sep, $d2); switch ($type){ case 'A': $X = 31536000; break; case 'M': $X = 2592000; break; case 'D': $X = 86400; break; case 'H': $X = 3600; break; case 'MI': $X = 60; break; default: $X = 1; break; } return floor( ( ( mktime(0, 0, 0, $d2[1], $d2[2], $d2[0]) - mktime(0, 0, 0, $d1[1], $d1[2], $d1[0] ) ) / $X ) ); }
Edição feita por: Tugu, 29/05/2013, 11:38.
<span style='font-size:10pt;line-height:100%'>Fernando Tugu</span>
Meu Lema: "O ser Humano não é nada sem seus sonhos . . . então vá pra cama dormir ! ! !"
Meu Lema: "O ser Humano não é nada sem seus sonhos . . . então vá pra cama dormir ! ! !"
1 user(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)