ตัวอย่างการใช้คำสั่ง
echo show_year_month_day_for_age('2003-05-01');
ผลลัพธ์
11 ปี 0 เดือน 21 วัน
จากวันที่ด้านบนจะนับเป็น 21 วันเพราะวันที่ 22 ยังไม่ผ่านตามคำสั่งนี้เลยยังไม่นับวันที่ 22 ด้วย ทำให้ผลลัพธ์ที่ได้เป็น 21 วัน
ตัวอย่างคำสั่ง
function show_year_month_day_for_age($pbday){$dinm = array(0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);$today = date("Y-m-d");list($byear , $bmonth , $bday) = explode("-" , $pbday);list($tyear , $tmonth , $tday) = explode("-" , $today);$result_y = $today-$byear;$result_m = $tmonth-$bmonth;if($result_m น้อยกว่า 0) {$result_y = $result_y-1;$result_m = 12-abs($result_m);}$result_d = $tday-$bday;if($result_d น้อยกว่า 0) {if($result_m!=0) {$result_m = $result_m-1;} else {$result_y = $result_y-1;$result_m = 12-1;}$d = $dinm[$tmonth-1];if($tmonth==2 && ($tyear%4)==0) { //ปีที่มี ก.พ. 29 วัน$d = $d+1;}$result_d = $d-abs($result_d);}$age = $result_y." ปี ".$result_m." เดือน ".$result_d." วัน";return($age);}
ปล.
คำว่า น้อยกว่า คือเครืองหมาย น้อยกว่า ใส่ไม่ได้ระบบบอกว่าเป็น รหัส html ไม่ผ่าน เลยต้องเพิ่มเป็นข้อความเอาครับ