Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

felipebmfaria

[Resolvido] Calcular idade a partir do nascimento

Recommended Posts

Boa tarde!

 

Quebrei a cabeça e nao consegui entender... estou usando um codigo que achei em http://www.htmlstaff.org/ver.php?id=15858 para calcular a idade da pessoa a partir da data de nascimento, mas ela nao esta funcionando corretamente cmg. vou postar o codigo:

 

$nascimento_br = $_POST['nascimento']; // a dat vem no formato dd-mm-aaaa

function CalcularIdade($nascimento_br) {
$hoje = date("d-m-Y"); //pega a data de hoje
$aniv = explode("-", $nascimento_br); //separa a data de nascimento em array, utilizando o símbolo de - como separador
$atual = explode("-", $hoje); //separa a data de hoje em array
  
$idade = $atual[2] - $aniv[2];

if($aniv[1] > $atual[1]) //verifica se o mês de nascimento é maior que o mês atual
{
$idade--; //tira um ano, já que ele não fez aniversário ainda
}
elseif($aniv[1] == $atual[1] && $aniv[0] > $atual[0]) //verifica se o dia de hoje é maior que o dia do aniversário
{
$idade--; //tira um ano se não fez aniversário ainda
}
return $idade; //retorna a idade da pessoa em anos
}

//Vamos assumir que o caboclo nasceu no dia 15 de fevereiro de 1985
//A função acima vai calcular a idade dele
//Atenção: a data de nascimento precisa estar no formado dd-mm-aaaa (dia-mês-ano)

//echo "Sua idade é de ".CalcularIdade("15-2-1985")." anos"; //Imprime na tela "Sua idade é de 22 anos
$idade = CalcularIdade("$nascimento_br");

se eu entrar com a data 25/06/1985 o resultado da idade dá 2010, ao invés de 24 como deveria.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opa,

 

O problema não esta no script, e sim na forma como a data do nascimento esta sendo passada. No código utiliza-se o hífen"-" para separar a data, e como você disse você esta passando como barra"/" separando os dados, ou você muda no código:

$aniv = explode("/", $nascimento_br);

Ou você passa a data assim: 25-06-1985, com hífen.

 

Flws

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.