Hướng dẫn how to calculate age from year in php? - làm thế nào để tính tuổi từ năm trong php?

Hình tôi sẽ ném cái này vào đây vì đây dường như là hình thức phổ biến nhất của câu hỏi này.

Tôi đã thực hiện một so sánh 100 năm trên 3 loại hàm tuổi phổ biến nhất mà tôi có thể tìm thấy cho PHP và đăng kết quả của mình (cũng như các chức năng) lên blog của mình.

Như bạn có thể thấy ở đó, cả 3 func đều có hình dạng tốt chỉ với một sự khác biệt nhỏ về hàm thứ 2. Đề xuất của tôi dựa trên kết quả của tôi là sử dụng chức năng thứ 3 trừ khi bạn muốn làm điều gì đó cụ thể vào ngày sinh nhật của một người, trong trường hợp đó, hàm đầu tiên cung cấp một cách đơn giản để làm chính xác điều đó.

Tìm thấy vấn đề nhỏ với bài kiểm tra, và một vấn đề khác với phương pháp thứ 2! Cập nhật sắp tới blog sớm! Hiện tại, tôi sẽ lưu ý, phương pháp thứ 2 vẫn là phương pháp phổ biến nhất mà tôi tìm thấy trực tuyến, nhưng vẫn là phương pháp tôi tìm thấy sự không chính xác nhất!

Đề xuất của tôi sau khi đánh giá 100 năm của tôi:

Nếu bạn muốn một cái gì đó kéo dài hơn để bạn có thể bao gồm các dịp như sinh nhật và như vậy:

function getAge($date) { // Y-m-d format
    $now = explode("-", date('Y-m-d'));
    $dob = explode("-", $date);
    $dif = $now[0] - $dob[0];
    if ($dob[1] > $now[1]) { // birthday month has not hit this year
        $dif -= 1;
    }
    elseif ($dob[1] == $now[1]) { // birthday month is this month, check day
        if ($dob[2] > $now[2]) {
            $dif -= 1;
        }
        elseif ($dob[2] == $now[2]) { // Happy Birthday!
            $dif = $dif." Happy Birthday!";
        };
    };
    return $dif;
}

getAge('1980-02-29');

Nhưng nếu bạn chỉ đơn giản là muốn biết độ tuổi và không có gì hơn, thì: if you just simply want to know the age and nothing more, then:

function getAge($date) { // Y-m-d format
    return intval(substr(date('Ymd') - date('Ymd', strtotime($date)), 0, -4));
}

getAge('1980-02-29');

Xem blog


Một lưu ý chính về phương thức strtotime:

Note:

Dates in the m/d/y or d-m-y formats are disambiguated by looking at the 
separator between the various components: if the separator is a slash (/), 
then the American m/d/y is assumed; whereas if the separator is a dash (-) 
or a dot (.), then the European d-m-y format is assumed. If, however, the 
year is given in a two digit format and the separator is a dash (-, the date 
string is parsed as y-m-d.

To avoid potential ambiguity, it's best to use ISO 8601 (YYYY-MM-DD) dates or 
DateTime::createFromFormat() when possible.

Cập nhật lần cuối vào ngày 19 tháng 8 năm 2022 21:50:38 (UTC/GMT +8 giờ)

Ngày php: Bài tập-18 với giải pháp

Viết tập lệnh PHP để tính độ tuổi hiện tại của một người.

Ngày sinh mẫu: 11.4.1987

Giải pháp mẫu:

Mã PHP:

diff($bday);
printf(' Your age : %d years, %d month, %d days', $diff->y, $diff->m, $diff->d);
printf("\n");
?>

Đầu ra mẫu:

 Your age : 30 years, 3 month, 0 days

N.B .: Kết quả có thể varry cho ngày và giờ hệ thống của bạn.

Sơ đồ :

Hướng dẫn how to calculate age from year in php? - làm thế nào để tính tuổi từ năm trong php?

Trình chỉnh sửa mã PHP:

Có một cách khác để giải quyết giải pháp này? Đóng góp mã của bạn (và nhận xét) thông qua Disqus.

Trước đó: Viết hàm PHP để có được ngày bắt đầu và ngày kết thúc của một tuần (theo số tuần) của một năm cụ thể. Write a PHP function to get start and end date of a week (by week number) of a particular year.
Next: Write a PHP script to calculate weeks between two dates.

Mức độ khó của bài tập này là gì?

Kiểm tra kỹ năng lập trình của bạn với bài kiểm tra của W3Resource.

PHP: Lời khuyên trong ngày

PHP: Làm thế nào để có được xdebug var_dump để hiển thị toàn bộ đối tượng/mảng?

Đây là các biến có thể định cấu hình trong php.ini:

; with sane limits
xdebug.var_display_max_depth = 10
xdebug.var_display_max_children = 256
xdebug.var_display_max_data = 1024 

; with no limits
; (maximum nesting is 1023)
xdebug.var_display_max_depth = -1 
xdebug.var_display_max_children = -1
xdebug.var_display_max_data = -1

Tất nhiên, những thứ này cũng có thể được đặt trong thời gian chạy qua ini_set (), hữu ích nếu bạn không muốn sửa đổi php.ini và khởi động lại máy chủ web của mình nhưng cần nhanh chóng kiểm tra một cái gì đó sâu sắc hơn.

ini_set('xdebug.var_display_max_depth', '10');
ini_set('xdebug.var_display_max_children', '256');
ini_set('xdebug.var_display_max_data', '1024');

Tham khảo: https://bit.ly/350VHKF


  • Bài tập: Top 16 chủ đề phổ biến nhất hàng tuần
  • Bài tập SQL, Thực hành, Giải pháp - Tham gia
  • Bài tập SQL, Thực hành, Giải pháp - Quan sát phụ
  • JavaScript Basic - Bài tập, Thực hành, Giải pháp
  • Java Array: Bài tập, Thực hành, Giải pháp
  • C Bài tập lập trình, Thực hành, Giải pháp: Tuyên bố có điều kiện
  • Cơ sở dữ liệu nhân sự - Sắp xếp bộ lọc: Bài tập, Thực hành, Giải pháp
  • C Bài tập lập trình, Thực hành, Giải pháp: Chuỗi
  • Các loại dữ liệu Python: Từ điển - Bài tập, Thực hành, Giải pháp
  • Câu đố lập trình Python - Bài tập, Thực hành, Giải pháp
  • Mảng C ++: Bài tập, Thực hành, Giải pháp
  • Báo cáo và vòng lặp có điều kiện JavaScript - Bài tập, Thực hành, Giải pháp
  • Thuật toán cơ bản C# Sharp: Bài tập, Thực hành, Giải pháp
  • Python Lambda - Bài tập, Thực hành, Giải pháp
  • Python Pandas DataFrame: Bài tập, Thực hành, Giải pháp
  • Công cụ chuyển đổi
  • JavaScript: HTML Mẫu xác thực


Làm thế nào để tính tuổi từ ngày trong PHP?

PHP $ bday = new DateTime ('11 .4. 1987 ');// Ngày sinh của bạn $ hôm nay = DateTime mới (ngày ('m.d.y'));$ diff = $ hôm nay-> diff ($ bday);printf ('tuổi của bạn: %d năm, %d tháng, %d ngày', $ diff-> y, $ diff-> m, $ diff-> d);printf ("\ n");?>

Làm cách nào để tính tuổi trong mysql?

Trong MySQL, bạn có thể sử dụng hàm dấu thời gian sẵn có () để tính chênh lệch giữa hai ngày và trả về giá trị trong ngày, tháng hoặc năm.use the inbuilt TIMESTAMPDIFF() function to compute the difference between two dates and return a value either in days, months or years.

Làm cách nào để tính tuổi trong HTML?

hàm tính toán (ngày) {const now = new date ();const diff = toán học.abs (bây giờ - ngày);const tuổi = toán học.Tầng (Diff / (1000 * 60 * 60 * 24 * 365));Trả về tuổi} var picker = new Pikaday ({trường: tài liệu.

Làm thế nào để bạn chuyển đổi một ngày sinh đến một độ tuổi ở Excel?

Công thức excel cơ bản cho tuổi trong năm Công thức tuổi thông thường này cũng có thể được sử dụng trong Excel.Phần đầu tiên của công thức (hôm nay ()-b2) trả về sự khác biệt giữa ngày và ngày sinh hiện tại là ngày, và sau đó bạn chia con số đó cho 365 để có được số năm.(TODAY()-B2) returns the difference between the current date and date of birth is days, and then you divide that number by 365 to get the numbers of years.