Calculer l'age en années, mois et jours

Contenu du snippet

voila, c'est la première source que je dépose.
Ca sert a calculer l'age en année, mois et jours a partir d'une date de naissance du type "jj/mm/aaaa".
En fait je l'avais programmé en javascript et je l'ai mis en PHP.
(Certaines variables sont en allemand parce que je l'ai fait en allemagne =D )

Source / Exemple :


function calcul_age($nais){
if(@ereg("/",$nais)){
$nais=explode("/",$nais);
$nais1=$nais[0];
$nais2=$nais[1];
$nais3=$nais[2];
}
if($nais1<=31 && $nais2<=12 && $nais3>1900){

$date = date("d");
$mois = date("m");
$jahre = date("Y")-$nais3;

if($mois>=$nais2){
 $monat=$mois-$nais2;
}
if($mois<$nais2){
 $monat=(12-$nais2)+$mois;
 $jahre-=1;
}
if($date<$nais1){
 $jahre-=1;
 $monat=(12-$nais2)+$mois;
 if($mois<$nais2){
  $jahre++;
  $monat-=1;
 }
}
if($monat>=13){
 $jahre++;
 $monat-=13;
}
if($monat==12){
 $monat=11;
}

if($date>=$nais1){
 $tag=$nais1-$date;
}else{
 $tag=$date+(31-$nais1);
 if(($mois/2)==Math.round($mois/2)){
  $tag++;
 }
}
if($tag<0) $tag*=-1;;

$retour=Array();
$retour[0]=$jahre; //age en années
$retour[1]=$monat; //age en mois
$retour[2]=$tag; //age en jours

if($nais1==$date && $nais2==$mois) $retour[3]="Joyeux anniversaire !";
}else{
$retour[0]="Erreur";
}

return $retour;
}

$age=calcul_age("29/1/1989");

if($age[0]!="Erreur"){
echo $age[0]." ans, ".$age[1]." mois et ".$age[2]." jours.<br>".$age[3];
}

// la fonction calcul_age() renvoi un tableau
// [0] = années
// [1] = mois
// [2] = jours
// [3] = "Joyeux anniversaire !" (si c'est le jour de l'anniversaire)

Conclusion :


Dites moi SVP si il y a des bugs

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Du même auteur (Splacheur)