我将时间存储为Mysql
中的Datetime
。我想向用户显示自发布以来已经过去了多长时间。
$serverdate = $row['serverdate']; //get datetime from server
$serverdate_as_datetime = date_create_from_format('Y-m-d H:i:s', $serverdate); //i fucked up here
$now = new DateTime(); // what time is it
$since = $now->diff($serverdate_as_datetime); //difference
echo $since->m.'<br>'.$since->d.'<br>'.$since->h.'<br>'.$since->i.'<br>'.$since->s;
这就是疯狂的事情。乍一看代码工作完美,但后来我意识到两次之间的差异正在减少有时甚至增加!!!即使我没有碰代码!!我放弃了如果你建议新事物我愿意尝试。感谢您的帮助
最佳答案
两个时间是不同的,因为$serverdate
和$now
不是同时生成的
关于php - 将服务器时间转换为 PHP 中的 DateTime 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34109318/