首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用$date->diff计算php中的年龄返回错误的值

使用$date->diff计算php中的年龄返回错误的值
EN

Stack Overflow用户
提问于 2022-01-31 07:03:54
回答 1查看 44关注 0票数 0

我计算一个人的年龄如下-

代码语言:javascript
复制
$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中还有其他计算年龄的技术吗?

EN

回答 1

Stack Overflow用户

发布于 2022-01-31 07:24:53

差异是由于你的时区。试着使用以下方法:

代码语言:javascript
复制
$dob = new \DateTime('01-03-2004');
$to = new \DateTime("28-02-2022");
$interval = $dob->diff($to);

如果没有指定时区,它将给你,你想要的结果。

输出:

代码语言:javascript
复制
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
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70922250

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档