>백엔드 개발 >PHP 튜토리얼 >PHP에서 DD/MM/YYYY 생년월일로부터 나이를 안정적으로 계산하는 방법은 무엇입니까?

PHP에서 DD/MM/YYYY 생년월일로부터 나이를 안정적으로 계산하는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-12-05 06:48:14701검색

How to Reliably Calculate Age from a DD/MM/YYYY Date of Birth in PHP?

PHP: "dd/mm/yyyy" 형식의 DOB에서 나이 계산

생년월일에서 사람의 나이 계산 이는 특히 대량의 데이터를 처리할 때 어려운 작업이 될 수 있습니다. 이 질문은 현재 날짜에 도달할 때까지 기간을 늘리기 위해 while 루프를 활용한 이전 방법에서 직면한 특정 문제에 초점을 맞추고 있습니다.

질문에서 제안된 한 가지 대안 방법은 strtotime() 및 Floor( )는 현재 시간과 생년월일의 차이를 계산하는 함수입니다. 그러나 언급한 대로 이 방법에도 한계가 있습니다.

신뢰할 수 있는 솔루션

더 신뢰할 수 있는 접근 방식은 날짜와 월을 기준으로 나이를 계산하는 것입니다. 생년월일과 현재 날짜. 다음은 발생한 문제를 해결하는 개정된 PHP 함수입니다.

<?php
function calculateAge($birthDate) {
  $birthDate = explode("/", $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]));
  return $age;
}

$dob = "14/09/1986";
$age = calculateAge($dob);
echo "Age: ".$age;
?>

구현 세부 정보

  • calculateAge() 함수는 생년월일을 나타내는 문자열을 사용합니다. "dd/mm/yyyy" 형식을 입력으로 사용합니다.
  • 문자열을 다음 배열로 분할합니다. 날짜 구성 요소(월, 일, 연).
  • mktime() 함수를 사용하여 현재 시간과 생년월일의 차이를 계산합니다.
  • 월, 일을 비교합니다. 생년월일을 이번 달과 일자로 비교하여 올해 생일이 있었는지 확인합니다.
  • 이 비교를 바탕으로 나이 계산을 조정합니다.

이 접근 방식은 처리되는 DOB 수에 관계없이 개인의 나이를 계산하는 정확하고 효율적인 방법을 제공합니다.

위 내용은 PHP에서 DD/MM/YYYY 생년월일로부터 나이를 안정적으로 계산하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.