Trouver l'âge exact en fonction d'une date de naissance.
Développement PHP / MySQL, Référencement ☄ 0J’ai créé récemment une fonction simple et efficace pour récupérer l’âge d’un membre à partir de cette date de naissance. Trop souvent, j’ai vu des scripts donnant un âge approximatif calculé à partir des années de naissance.
Donc voici ma création, qui récupère l’année de naissance, ainsi que le mois et le jour ( aux formats date ‘Y’, ‘n’ et ‘j’, donc 1999, 2000 … ; 1, 2, 3, …, 11, 12 et 1, 2, 3, …, 30, 31 )
<?php function age($annee_naissance, $mois_naissance, $jour_naissance, $timestamp = '') { //Si on veut vérifier à la date actuelle ( par défaut ) if(empty($timestamp)) $timestamp = time(); //On evalue l'age, à un an par exces $age = date('Y',$timestamp) - $annee_naissance; //On retire un an si l'anniversaire n'est pas encore passé if($mois_naissance > date('n', $timestamp) || ( $mois_naissance== date('n', $timestamp) && $jour_naissance > date('j', $timestamp))) $age--; return $age; } echo age('1987','9','11'); // Affichera 20 echo age(1987,9,11); // Affichera 20 echo age('1987','09','11'); // Affichera 20 echo age(1987,09,11); // Ne fonctionnera pas : mauvais format de date ! ?>
à noter un paramètre optionnel : $timestamp, si vous souhaitez calculer un age à une date en particulier ![]()
Si cette fonction vous est utile, c’est impeccable !
( Et si vous trouvez un bug quelconque, n’hésitez pas à me le signaler, merci
)
Tags : age, anniversaire, calcul, php
4 commentaires sur ce post