PHP MYSQL计算年和日

时间:2016-06-02 14:48:09

标签: php mysql

考虑到闰年,有谁知道我如何用MySQL计算我的年龄和剩余天数?

我找到了可以计算总天数的例子。

但我想得到一个结果:

test1= /^\d{1,3}?([,]\d{3}|\d)*?\.\d\d$/;
test1.test(1,100.00);

现在我得到了这个:

22 years, 134 days,
23 years, 361 days    
24 years, 11 days

但这不起作用,%30.4375不是闰年的解决方案。

2 个答案:

答案 0 :(得分:0)

MySQL主要是一个数据库而不是渲染引擎。我建议使用PHP DateTime对象来处理时间跨度 - 从MySQL服务器加载数据后:

$d1=new DateTime($row['dob']);
$d2=new DateTime('now');
$diff=$d2->diff($d1);
print_r( $diff ) ; 

答案 1 :(得分:0)

这个怎么样:

SELECT 
  name,
  dob,
  TIMESTAMPDIFF(YEAR, dob, now()) years, 
  TIMESTAMPDIFF(DAY, TIMESTAMPADD(YEAR, TIMESTAMPDIFF(YEAR, dob, now()), dob), now()) days
FROM
   client;

第一部分获得年份,第二部分增加了出生日期以获得上一个生日&然后获得自那时起的天数。