Rumah >pembangunan bahagian belakang >tutorial php >Bagaimanakah Saya Boleh Mengira Umur dengan Tepat dalam PHP, Mengendalikan Tahun Lompat dan Mengelak Isu Kebolehpercayaan?
Mengira Umur dengan Ketepatan dalam PHP
Memandangkan tarikh lahir pangkalan pengguna yang besar, penentuan umur mereka dengan tepat menimbulkan cabaran. Pendekatan sedia ada, seperti menjalankan gelung sehingga tarikh semasa melebihi tarikh lahir, telah menghadapi masalah kebolehpercayaan. Mari kita mendalami penyelesaian yang lebih mantap dan cekap.
Satu kaedah alternatif melibatkan memanfaatkan fungsi strtotime(). Dengan menyediakan tarikh dalam format mm/dd/yyyy, strtotime() menukarkannya menjadi cap waktu yang mewakili bilangan saat sejak zaman itu (1 Januari 1970 00:00:00 UTC). Menggunakan cap masa ini, kita boleh mengira umur dengan membahagikan perbezaan antara cap masa semasa dan cap masa tarikh lahir dengan bilangan saat dalam setahun (31556926).
Walau bagaimanapun, pendekatan ini mungkin tidak mengendalikan tahun lompat dengan betul dan boleh mengakibatkan pengiraan umur yang salah. Untuk menangani perkara ini, pendekatan yang lebih tepat ialah menggunakan fungsi mktime(), yang mengambil bulan, hari dan tahun sebagai parameter dan mengembalikan cap waktu. Ini membolehkan kami membina semula tarikh lahir dan tarikh semasa dengan tepat dalam format yang setanding, memastikan ketepatan walaupun dalam kehadiran tahun lompat.
Contoh:
$birthDate = "12/17/1983"; // mm/dd/yyyy format $birthDateTimestamp = mktime(0, 0, 0, $birthDate[0], $birthDate[1], $birthDate[2]); $currentDateTimestamp = time(); $age = (date("md", $birthDateTimestamp) > date("md") ? ((date("Y") - (int)$birthDate[2]) - 1) : (date("Y") - (int)$birthDate[2])); echo "Age is: " . $age;
Contoh kod ini memberikan yang boleh dipercayai dan cara yang tepat untuk mengira umur seseorang yang diberi tarikh lahir mereka dalam format mm/dd/tttt, menangani kemungkinan perangkap dan memastikan ketepatan walaupun dalam lonjakan tahun.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengira Umur dengan Tepat dalam PHP, Mengendalikan Tahun Lompat dan Mengelak Isu Kebolehpercayaan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!