Hummm, muito obrigado pela explicacao.
Vou ver qual metodo ficara melhor no meu programa...
Eh que um dia em algum lugar vi que o perl fazia isso automaticamente,
mas acho que estava sonhando..hehehe
Valeu mesmo pela explicacao...Ateh mais...
Thiago Rondon wrote:
> Ola,
>
> Voc� pode usar um comando do unix, o date.
>
> por exemplo, voc� tem:
>
> #!/usr/bin/perl
> $date=`date`;
> print "$date\n";
>
> A saida ser�:
> dom fev 13 18:47:37 WST 2000
>
> Agora se voc� quizer, por exemplo com dois dias
> antes, voc� faz:
>
> #!/usr/bin/perl
> $date=`date --date '2 days ago'``;
> print "$date\n";
>
> A saida ser�:
> sex fev 11 18:48:39 WDT 2000
>
> Agora voc� pode ir manipulando, em vez do parametro
> 2 days ago, voc� pode colocar 2 days next.
>
> Agora caso queira fazer algo pr�prio, n�o tenho certeza
> se na CPAN existe algum modulo para manipula��o de
> data, mais voc� pode fazer, algo do tipo:
>
> sub Somar_data()
> {
> ($dia, $mes, $ano) = @_;
>
> @dia_final_30="04,06,09,11";
> @dia_final_31="01,03,05,07,08,10,12";
> @dia_final_29="02";
>
> foreach $dia_temp (@dia_final_30) {
> if ($dia_final eq $mes) { $dia_final=$dia_tempo; } }
>
> foreach $dia_temp (@dia_final_31) {
> if ($dia_final eq $mes) { $dia_final=$dia_tempo; } }
>
> foreach $dia_temp (@dia_final_29) {
> if ($dia_final eq $mes) { $dia_final=$dia_tempo; } }
>
> if ($dia ne $dia_final) {
> $dia_novo = $dia + 1;
> $mes_novo = $mes
> }
>
> if ($dia eq $dia_final) {
> $dia_novo = 01;
> if ($mes ne "12") {
> $mes_novo = $mes_novo + 1;
> $ano_novo = $ano;
> }
> if ($mes eq "12") {
> $mes_novo = "01";
> $ano_novo = $ano + 1;
> }
> }
> }
>
> Dae, para chamar a fun�ao utilize:
>
> &Soma_data(01,01,01);
> print "Data antiga: $dia/$mes/$ano\n";
> print "Data nova: $dia_novo/$mes_novo/$ano_novo\n";
>
> Eu n�o testei, escrevi aqui r�pido, mais melhore, e veja
> o que voc� pode fazer, lhe dei duas solu��es.. :)
>
> -- Thiago Rondon
>
> At 20:02 11/02/00 -0200, you wrote:
> >
> >Bom dia
> >
> >No perl tem como menipular as datas (fazer calculos) ?
> >Algo do tipo
> >$data = "30/10/99"
> >
> >SomaDia(1,$data)
> >
> >Entao $data tem o seguinte conteudo : "01/11/99"
> >
> >
> >--
> >Abracos, Luiz Otavio
> >-----------------------
> >
> >
> >http://www.mrweb.com.br/perl/
> >=======================================
> >>>No site da lista, voce tera tudo sobre PERL,
> >>>LINUX, PHP, ASP e informacoes, cadastramento
> >>>e descadastramento da Lista.
> >=======================================
> >
>
> http://www.mrweb.com.br/perl/
> =======================================
> >>No site da lista, voce tera tudo sobre PERL,
> >>LINUX, PHP, ASP e informacoes, cadastramento
> >>e descadastramento da Lista.
> =======================================
--
Abracos, Luiz Otavio
-----------------------
http://www.mrweb.com.br/perl/
=======================================
>>No site da lista, voce tera tudo sobre PERL,
>>LINUX, PHP, ASP e informacoes, cadastramento
>>e descadastramento da Lista.
=======================================