Maison >développement back-end >tutoriel php >Comment puis-je calculer de manière fiable l'âge en PHP ?

Comment puis-je calculer de manière fiable l'âge en PHP ?

DDD
DDDoriginal
2024-12-07 02:45:11812parcourir

How Can I Reliably Calculate Age in PHP?

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn