ホームページ >バックエンド開発 >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」形式の生年月日から年齢を計算する

生年月日から人の年齢を計算する特に大量のデータを扱う場合には、困難な作業になる可能性があります。この質問は、while ループを利用して現在の日付に達するまで経過時間をインクリメントする以前の方法で遭遇した特定の課題に焦点を当てています。

質問で提案されている代替方法の 1 つは、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() 関数を使用して、現在の時刻と生年月日の差を計算します。
  • 月と日を比較します。生年月日と現在の月日を比較して、今年誕生日があったかどうかを判断します。
  • この比較に基づいて、年齢の計算を調整します。
このアプローチは、処理される生年月日の数に関係なく、個人の年齢を正確かつ効率的に計算する方法を提供します。

以上がPHP で DD/MM/YYYY の生年月日から確実に年齢を計算する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。