PHP Calculer l'âge : une approche améliorée et fiable
Calculer l'âge d'une personne en fonction de sa date de naissance (DOB) est un tâche courante en PHP. Bien qu'il existe différentes méthodes disponibles, certaines peuvent rencontrer des problèmes inattendus ou produire des résultats inexacts. Cet article présente une approche plus fiable et plus efficace du calcul de l'âge.
L'un des défis potentiels de la boucle while fournie est qu'elle peut conduire à une boucle infinie dans certaines conditions. Pour éviter cela, une solution plus robuste consiste à utiliser la fonction floor() pour calculer l'âge en fonction de la différence entre l'heure actuelle et la date de naissance.
L'extrait de code PHP suivant fournit une manière améliorée de calculer l'âge. :
<?php //date in mm/dd/yyyy format; or it can be in other formats as well $birthDate = "12/17/1983"; //explode the date to get month, day and year $birthDate = explode("/", $birthDate); //get age from date or birthdate $age = (date("md", date("U", mktime(0, 0, 0, $birthDate[0], $birthDate[1], $birthDate[2]))) > date("md") ? ((date("Y") - $birthDate[2]) - 1) : (date("Y") - $birthDate[2])); echo "Age is:" . $age; ?>
Cette approche utilise la fonction mktime() pour convertir le DOB en un horodatage, qui est ensuite utilisé pour calculer la différence entre l'heure actuelle et le DOB. La fonction date() est utilisée pour formater l'âge sous forme de chaîne.
Cette méthode améliorée est plus fiable et efficace que le code fourni, et élimine le risque de boucles infinies ou de calculs d'âge incorrects.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!