我计算一个人的年龄如下-
$dob = new DateTime('01-03-2004', new DateTimeZone("Asia/Dhaka"));
$to = new DateTime("28-02-2022", new DateTimeZone("Asia/Dhaka"));
$interval = $dob->diff($to);17岁,11个月,29天。
但calculator.net显示17岁,11个月,27天。
在php中还有其他计算年龄的技术吗?
发布于 2022-01-31 07:24:53
差异是由于你的时区。试着使用以下方法:
$dob = new \DateTime('01-03-2004');
$to = new \DateTime("28-02-2022");
$interval = $dob->diff($to);如果没有指定时区,它将给你,你想要的结果。
输出:
DateInterval {#721 ▼
interval: + 17y 11m 27d
+"y": 17
+"m": 11
+"d": 27
+"h": 0
+"i": 0
+"s": 0
+"f": 0.0
+"weekday": 0
+"weekday_behavior": 0
+"first_last_day_of": 0
+"invert": 0
+"days": 6573
+"special_type": 0
+"special_amount": 0
+"have_weekday_relative": 0
+"have_special_relative": 0
}https://stackoverflow.com/questions/70922250
复制相似问题