terça-feira, 22 de janeiro de 2013

Operações com datas em PHP do jeito quase certo

Há uns 2 meses atrás, fiz uma função que somava 10 dias em uma certa data.
Fiz assim:
 (date('d')+10).date('/m/Y');  

É até vergonhoso ver que fiz algo de um jeito tão jurássico, há apenas 2 meses. Só percebi o problema porque um dos vendedores tentou cadastrar um orçamento com a data 32/01/2013...

Como agora tem toda essa história de 'php do jeito certo', decidi ver qual o jeito certo de se fazer, que é mais ou menos o seguinte:
 $hoje = date_create();  
 date_add($hoje, date_interval_create_from_date_string('10 days'));  
 echo $hoje->format('d/m/Y');  


Mas, ao testar em produção, deu erro, porque a versão do php do servidor está desatualizada (novidade...), e a função date_add só existe a partir da versão 5.3.0. Aí tive que tentar o segundo jeito certo, que é algo assim:

 $date = date_create();  
 date_modify($date, '+10 day');  
 echo date_format($date, 'd/m/Y');  

Nenhum comentário: