我正在开发一个网站,允许用户查看他们的设备并知道距离维修开始已经过去了多少天。
但是我在获取有关日期的数据库信息时遇到问题。我注册了一个列 DATE,并用 CURRENT_TIMESTAMP 将其设为时间戳,以便它可以自动归属加入系统的日期。
我正在使用脚本来获取今天的日期,并将其放在表中,以便它可以向用户显示:
<script>
var days = new Date();
document.getElementById("days").innerHTML = days.toISOString().substr(0, 10);
</script>
然后我调用了一个函数来获取所有设备信息(客户端名称、日期、类型等):
include_once('DataAccess.php');
$da = new DataAccess();
$res = $da->getEquipmentInfo();
while($row = mysqli_fetch_object($res)){
echo " <td id='days'></td> "; }
如何计算数据库列 DATE 和今天日期之间的差异以了解过去了多少天?
谢谢。
将两个日期都转换为 unix,然后找到它们之间的差异,具体取决于您是否需要天、周、分钟等。 您必须转换。我没有足够的信息来说明您的代码和所有 JavaScript 来为您完成,但这里有一个 php 示例。
<?php
$now = time();
$db_unix = strtotime($res->theMysqlTimestamp);
$datediff = $now - $db_unix;
echo floor($datediff/(60*60*24));
?>
这现在采用日期,来自 mysql 的时间戳获取 unix 时间戳,减去它们,然后计算它们之间的天数差异。