我正在开发一个网站,允许用户查看他们的设备并知道距离维修开始已经过了多少天。
但是我在获取有关日期的数据库信息时遇到问题。 我注册了一个 DATE 列,并将其设置为 CURRENT_TIMESTAMP 的 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 时间戳,减去它们,然后计算它们之间的天数差异。
关于javascript - 数据库日期和今天日期之间的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34950161/