quinta-feira, 16 de maio de 2013

Pegar o ultimo dia do mês em php

Eae galera belezzz.
seguinte estava precisando pegar o ultimo dia do mês para fazer um filtro no php. O método mais fácil que encontrei foi:

$datafim  = date("t-$mes-$ano");

Mas desta forma só traz a ultima data do mês atual ou seja se eu atribuir $ano = 2013 e  $mes= 02 estando no mes atual (05) a data vai ficar 31-02-2013...
Assim sendo para o mês atual blz funcia perfeitamente.

$datafim  = date("t-m-Y");

Para meses diferentes do atual a solução que encostrei foi aumentar um mês e diminuir um dia assim:

$ano = 2013;
$mes= 02 ;

$dia = 1;
$mes +=1;
if($mes > 12){
$mes = 1;
$ano += 1;
}
$novaData = mktime ( 0, 0, 0, $mes, $dia - 1, $ano);
$datafim  = strftime("%d-%m-%Y", $novaData);


está ai... funciona para qualquer data valida.