Maison  >  Article  >  développement back-end  >  Comment calculer l'âge à partir de la date de naissance en SQL et PHP ?

Comment calculer l'âge à partir de la date de naissance en SQL et PHP ?

DDD
DDDoriginal
2024-10-24 12:01:02953parcourir

How to Calculate Age from Date of Birth in SQL and PHP?

Calculer l'âge à partir de la date de naissance en SQL et PHP

Déterminer l'âge d'un utilisateur en fonction de sa date de naissance est une tâche courante dans de nombreuses applications. Dans cet article, nous explorerons comment y parvenir en SQL et en PHP.

Approche SQL

MySQL fournit la fonction TIMESTAMPDIFF(), qui nous permet de calculer la différence entre deux horodatages. Dans notre cas, nous pouvons utiliser cette fonction pour calculer l'âge en années entre la date de naissance d'un utilisateur et la date actuelle. La requête suivante illustre cette approche :

<code class="sql">SELECT TIMESTAMPDIFF(YEAR, '1970-02-01', CURDATE()) AS age</code>

Cette requête renverra l'âge de l'utilisateur en années. Si un utilisateur est né le 15 mars 1999, la requête renverra 14. De même, si un utilisateur est né le 15 mars 2014, la requête renverra 15.

Approche PHP

PHP propose plusieurs options pour calculer l'âge d'un utilisateur à partir de sa date de naissance. L'extrait de code suivant illustre deux approches utilisant la classe DateTime :

<code class="php">// object oriented
$from = new DateTime('1970-02-01');
$to   = new DateTime('today');
echo $from->diff($to)->y;

// procedural
echo date_diff(date_create('1970-02-01'), date_create('today'))->y;</code>

Les deux approches renvoient l'âge de l'utilisateur en années. La fonction date_diff() peut également être utilisée pour calculer la différence entre deux objets DateTime, comme indiqué dans l'approche procédurale.

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