今天和 unix 时间戳之间的天数差异..

Difference in days between today and unix timestamp..

那么首先要做的是 DateDiff() 吗?

<?php

$date1 = strtotime(1766253900); // expiry date
$date2 = strtotime(1539652560); // todays date
$dtDiff = $date1 - $date2;
$totalDays = intval($dtDiff/(24*60*60));
echo $totalDays
?>

我这样试过,但它输出的是 0 ZERO

只需删除 strtotime,因为这两个日期已经是 UNIX 时间戳,即自 1970 年以来的秒数

<?php

$date1 = 1766253900; // expiry date
$date2 = 1539652560; // todays date
$dtDiff = $date1 - $date2;
$totalDays = intval($dtDiff/(24*60*60));
echo $totalDays
?>

这就是你如何使用 DateTime and DateInterval 类:

// set expiry date
$date1 = (new DateTime())->setTimestamp(1766253900);
// today's date
$date2 = new DateTime();
$diff = $date1->diff($date2);
echo $diff->days;

产出(截至 2018 年 10 月 15 日)

2622

因为你输入的1766253900和1539652560已经是时间戳了,strotime的作用是把普通的日期转换成UNIX时间,所以不用strotime把UNIX时间转换成UNIX时间

<?php
$date1 = 1766253900; //expiry date
$date2 = 1539652560; //todays date
$totalDays = intval(($date1-$date2)/(24*60*60));
print_r($totalDays);

您可以使用 mysql 函数将 UNIX 时间转换为正常时间

mysql> select from_unixtime(1766253900); #2025-12-21 02:05:00

但您也可以使用 mysql 函数将正常时间转换为 UNIX 时间

mysql> select unix_timestamp('2025-12-21 02:05:00'); #1766253900