Treva Fórum
~~ Treva Fórum ~~

Beiin Viindos ao Treva Fórum Entrem Se Registrem se Divirta...
e chamem amigos para Acessar também e participe de nossos eventos e Promoções.

Equipe Treva Fórum.

[PHP] Tutorial de Cálculo de Idade

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

[PHP] Tutorial de Cálculo de Idade

Mensagem por XSnake1996 em Sex Jun 11, 2010 2:25 pm

Bom dia Pessoal,

Venho pela 1ª vez publicar um pequeno tutorial, que tem como objectivo o esclarecimento de dúvidas simples e que por vezes se tornam complexas para os programadores mais "verdes".
Este tutorial aborda o tema das datas mais especificamente, o cálculo da idade através da data de nascimento e a data actual.

Código:

<?php
/*
------------------------------------------------------------------------------------------------------------
Nome da função:  difTiposDatas
Descrição:  Função que retorna a data actual em diferentes formatos
Parametros de entrada: Não tem
Parametros de saida: $data7(Variavél)  -- Data no formato escolhido
*/
function difTiposDatas()
{
   $data_hora = date("j F , Y, g:i a");            // 16 Outubro 2008, 10:16 pm
   $data1 = date("m.d.y");                        // 16.03.08
   $data2 = date("j, n, Y");                      // 16, 10, 2008
   $data3 = date("Ymd");                          // 20081016
   $data4 = date('h-i-s, j-m-y, it is w Day z ');  // 05-16-17, 10-03-01, 1631 1618 6 Fripm01
   $dia_desc = date('\i\t \i\s \t\h\e jS \d\a\y.');// It is the 16th day.
   $data5 = date("D M j G:i:s T Y");              // Qui Out 16 10:16:08 MST 2008
   $hora = date("H:i:s");                          // 10:16:17
   $data6 = date("Y/d/m");                     // 2008/16/10
   $data7 = date("d/m/Y");                     // 16/10/2008
   
   //Aqui retorna o tipo de data que pretende obter como tal deve mudar o nome da variavél que pretende retornar
   return $data7;
}

/*
------------------------------------------------------------------------------------------------------------
Nome da função: getIdade
Descrição:  Função que retorna a idade a partir da data de nascimento e data actual
Parametros de entrada: $data -- Data de nascimento
Parametros de saida: $dif_anos -- Idade (em anos)
*/
function getIdade($data)
{
      // Devolve a data atual no formato (dd/mm/yy)
      $data_actual = date("d/m/Y");
      
      //Separa a string de data_actual através da função substr em dia, mês e ano da data
      $dia_actual = substr($data_actual,0,2); //Variavél que guarda o dia actual (2 primeiros caracteres)
      $mes_actual = substr($data_actual,3,2); //Variavél que guarda o mês actual (4º e 5º caracter)
      $ano_actual = substr($data_actual,6,4); // Variavél que gurada o ano actual (2 ultimos caracteres)
      
      //Separa a string de data_nasc através da função substr em dia, mês e ano da data
      $dia_nasc = substr($data,0,2); // Variavél que guarda o dia de nascimento (2 primeiros caracteres)
      $mes_nasc = substr($data,3,2); //Variavél que guarda o mes de nascimento (4º e 5º caracter)
      $ano_nasc = substr($data,6,4); //Variavél que guarda o ano de nascimento (2 ultimos caracteres)
      
      //Verifica a diferença entre os anos
      $dif_anos = $ano_actual - $ano_nasc;
      
      //Vai verificar se o mes actual é inferior ao mês de nascimento de modo a verificar se este ano já efectuou anos
      if($mes_actual<$mes_nasc)//Caso seja inferior significa que  o  ainda não fez anos no ano corrente
      {
         $dif_anos--;//Diminuição de um ano
      }
      else if($mes_actual==$mes_nasc) //Caso onde o mês actual é o mesmo do que a data actual
      {
         //Como tal temos que recorrer á verificação dos dias de modo a saber se já efectou anos no ano corrente
         if($dia_actual<$dia_nasc)//Caso o dia actual seja inferior á dia de nascimento então significa que ainda não fez anos
         {
            $dif_anos--;//Diminuição de um ano
         }
      }
      
      //Retorna a idade do socio
      return $dif_anos;      
}
?>

Qualquer dúvida ou correcções estão á vontade como sempre.

XSnake1996
Administradores
Administradores

Mensagens : 48
Moedas Moedas : 0
Pixels Pixels : 2449
Respeito Respeito : 3
Data de inscrição : 11/06/2010
Idade : 20

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: [PHP] Tutorial de Cálculo de Idade

Mensagem por @_Kaio em Sex Jun 11, 2010 2:35 pm

Belo Snake ..
kkk'

@_Kaio
Administradores
Administradores

Mensagens : 42
Moedas Moedas : 9223372036854775807
Pixels Pixels : 2439
Respeito Respeito : 3
Data de inscrição : 09/06/2010

Ver perfil do usuário http://trevaforum.forumeiros.com

Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum