Rumah >pembangunan bahagian belakang >tutorial php >Bagaimanakah Saya Boleh Mengira Umur Seseorang dengan Tepat dalam PHP?

Bagaimanakah Saya Boleh Mengira Umur Seseorang dengan Tepat dalam PHP?

DDD
DDDasal
2024-12-19 14:55:11363semak imbas

How Can I Accurately Calculate a Person's Age in PHP?

Mengira Umur dalam PHP

Pada asalnya, soalan itu tertumpu pada skrip PHP yang rosak untuk mengira umur seseorang berdasarkan tarikh lahir mereka ( DOB) dalam format dd/mm/yyyy. Isu dengan fungsi yang disediakan terletak dalam gelung sementara yang tidak terhingga, menimbulkan kebimbangan tentang kebolehpercayaan.

Nasib baik, terdapat pendekatan yang lebih boleh dipercayai untuk mengira umur menggunakan PHP:

<?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;
?>

Dalam skrip ini :

  • Input DOB dibahagikan kepada bulan, hari dan tahun individu.
  • The fungsi mktime menukar DOB menjadi cap waktu Unix.
  • Fungsi tarikh digunakan untuk mengekstrak komponen bulan dan hari daripada tarikh semasa.
  • Pengiraan umur akhir memastikan ketepatan dengan mempertimbangkan kedua-dua perbezaan dalam tahun dan sama ada hari lahir seseorang itu telah berlalu pada tahun semasa.

Pendekatan ini secara berkesan mengira umur dan mengelakkan isu gelung tak terhingga yang dihadapi dalam fungsi sebelumnya.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengira Umur Seseorang dengan Tepat dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn