dicas e tutoriais para programação web

Como calcular idade em php

Como calcular idade em php

Mar 31, 2011

 

Esta simples função permite-nos calcular a diferença em anos entre duas datas que pretendemos. Pode servir para muitas e variadas ocasiões.

O exemplo que vou mostrar calcula a idade de uma pessoa numa determinada data.

Aqui fica:

 PHP |  copiar código |? 
01
echo "Idade: " . calcula_idade("1985-10-20","2011-03-31");
02
 
03
function calcula_idade($data_nascimento, $data_calcula)
04
{
05
    // as datas devem ser no formato aaaa-mm-dd
06
 
07
    //conversão das datas para o formato de tempo linux
08
    $data_nascimento = strtotime($data_nascimento." 00:00:00");
09
    $data_calcula = strtotime($data_calcula." 00:00:00");
10
 
11
    //cálculo da idade fazendo a diferença entre as duas datas
12
    $idade = floor(abs($data_calcula-$data_nascimento)/60/60/24/365);
13
 
14
    return($idade);
15
}

Na linha nº1 temos o resultado do cálculo, que neste caso irá escrever no browser: “Idade: 25″.

Na linha nº12 é efectuado um acerto ao resultado do cálculo. Em certos casos a idade poderia ser 25.70, mas como se pretende a idade em número inteiro irá ser sempre usado só o valor 25, uma vez que a pessoa ainda não tem realmente 26 anos.

Esta função pode ser aplicada em diversas situações, seja para simplesmente mostrar a idade, ou algo mais complexo, validar a idade consoante determinados parâmetros, como por exemplo, limitar a inscrição num evento a uma idade mínima de participação (um caso comum é a limitação somente a participantes maiores de idade).

Recomendo vivamente o uso do Komodo Edit 6 como ferramenta de desenvolvimento PHP. Podem ver o meu artigo Debug de php com Komodo Edit 6 e descubram esta excelente ferramenta!

Em caso de questões, dúvidas ou sugestões, deixe um comentário no final da página.

Tiago Ramalho

Tiago Ramalho é um profissional de Informática interessado em Internet, Programação .NET e PHP e blogging. Nos tempos livres escreve nos interessespessoais.com sobre Jardim, Sistemas, utilitários e outros temas relacionados com informática.

More Posts - Website - Facebook

4 comentários

  1. Calcular Idade - PHP /

    Pessoal, fico triste em saber que uma coisa tao simples e que tem inumeras formas de se fazer nas demais linguagens seja algo tao complicado em PHP, que é o calculo de uma idade.

    Segue um exemplo SUPER simples para fazer isso, espero que seja util:

    {
    $date1 = date_parse(date(“d/m/Y”)); // pega data atual, por exemplo 11/11/2011
    $date2 = date_parse({DataNasc1}); // pega data do campo/variavel cujo conteudo foi digitado pelo usuario (ex. 30/08/1997)

    $a = ((gmmktime(0, 0, 0, $date1['month'], $date1['day'], $date1['year']) – gmmktime(0, 0, 0, $date2['month'], $date2['day'], $date2['year']))/3600/24);
    // $a = assume o valor 5186 que é a qtde de dias que a pessoa viveu

    {Idade1} = (($a/365)); // Divide os dias vividos por 365 -> cada ano vivido, retorna o valor 14.208219178114 (idade com fração no calculo)
    {Idade1} = intval(($a/365)); // Retorna apenas a parte inteira da idade, ou seja 14 anos

    // nesse exemplo nao tratamos o resto da divisao, pois so interessa aqui a idade real e nao os dias que faltam para novo niver.
    // Pois, sendo o calculo 14.208219178114 nao importa, pois a idade da pessoa continua sendo apenas 14 anos.

    }

  2. Alex Morgado /

    Simples e objetivo, valeu!

Deixe um comentário

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>