2 time() 值之间的差异

2022-01-13 00:00:00 datetime timestamp php date-math

我有 2 个 time() 值,例如:

I have 2 time() values, for example:

1379078542
1379078574

我如何计算他们的差异并将输出显示为年、月、周、日、小时、分钟、秒等.

How do I work out their diffidence and display the output as years, months, weeks, days, hours, minutes, seconds etc.

我认为上面的 2 个值相差 32 秒,所以在这种情况下,我想显示 32 秒.

The 2 values above have a difference of 32 seconds I think, so in this case, I would want to display 32 seconds.

推荐答案

$datetime1 = new DateTime('@1379078542');
$datetime2 = new DateTime('@1379078574');
$interval  = $datetime1->diff($datetime2);
$elapsed   = $interval->format('%y years, %m months, %a days, %h hours, %i minutes, %S seconds');
$elapsed   = str_replace(array('0 years,', ' 0 months,', ' 0 days,',  ' 0 hours,', ' 0 minutes,'), '', $elapsed);
$elapsed   = str_replace(array('1 years, ', ' 1 months, ', ' 1 days, ',  ' 1 hours, ', ' 1 minutes'), array('1 year, ', '1 month, ', ' 1 day, ', ' 1 hour, ', ' 1 minute'), $elapsed);
echo $elapsed;

查看实际操作

相关文章