PHP - Diferença entre datas

Hoje vou demonstrar como você faz a diferença entre duas datas no formato de banco de dados. Não necessariamente precisa ser do banco de dados as datas, mas o formato abaixo é o mesmo que se utiliza (AAAA-MM-DD).

Por | @nmuller99 Programação
Olá caro leitor.

Hoje vou demonstrar como você faz a diferença entre duas datas no formato de banco de dados. Não necessariamente precisa ser do banco de dados as datas, mas o formato abaixo é o mesmo que se utiliza (AAAA-MM-DD).

$databd1 = '2005-01-01';
$databd2 = '2006-03-09';

$data1 = explode("-", $databd1);
$data2 = explode("-", $databd2);

$ano = $data2[0] - $data1[0];
$mes = $data2[1] - $data1[1];
$dia = $data2[2] - $data1[2];
if($mes < 0)
{
$ano--;
$mes = 12 + $mes;
}
if($dia < 0)
{
$mes--;
$dia = 30 + $dia;
}

if($ano > 0) $str_ano  = $ano . " ano";
if($ano > 1) $str_ano .= 's';

if($mes > 0) $str_mes  = $mes . " mes";
if($mes > 1) {if($ano > 0)$str_ano .= ' e '; $str_mes .= 'es'; }

if($dia > 0) $str_dia  = $dia . " dia";
if($dia > 1) {if($mes > 0)$str_mes .= ' e '; $str_dia .= 's'; }

echo "A diferença entre as datas é: $str_ano $str_mes $str_dia";


A resposta será:
A diferença entre as datas é: 1 ano 2 meses e oito dias.

Qualquer dúvida, dica ou sugestão poste comentário abaixo...

Mais sobre: php, datas
Share Tweet
DESTAQUESRecomendadoMais compartilhados
Comentários