通过的年数 - 考虑闰年

Nir*_*mal 1 php timestamp

在我们的人力资源系统中,我们想要计算员工为公司服务的年数.

我们所拥有的是TIMESTAMP列中的加入日期.

我在做的是:

$timeNow = time(); // current time
$joinDate = strtotime($users->fields['date_of_joining']); // from database
$servicePeriod = $timeNow - $joinDate; // in seconds
$servicePeriod = $servicePeriod / 31570560; // in years
Run Code Online (Sandbox Code Playgroud)

但是这会考虑闰年吗?如果一名员工加入Feb 27了闰年,如果我们明年检查他们的状态March 1,他仍应按照服务1 year而不是报告1 year and 1 day.

有什么想法吗?谢谢.

Gre*_*ill 7

你的方法似乎是一种不必要的迂回方式来计算它.怎么样(伪代码):

years = current_date.year - start_date.year
if current_date.mmdd < start_date.mmdd:
    years = years - 1
Run Code Online (Sandbox Code Playgroud)