我用谷歌搜索了,我放弃了,这里是......
我一直遇到处理时间/时间戳等的问题,我试图以SQL TIMESTAMP格式从我的数据库中提取日期,这是我到目前为止的...
$db = $row_rsSearch['created_date'];
$newdate = date("d/m/Y H:i:s", strtotime('+3 hours', $db));
它出了什么问题?当数据库提供时,我得到了“31/12/1969 20:33:34”的回报... 2014-04-25 02:19:53
提前致谢。
答案 0 :(得分:2)
如果我做得对,你想在每个日期增加3个小时?
为什么不在查询中执行此操作?
示例:
SELECT `date` + INTERVAL 3 HOUR AS created_date FROM `TABLE`
答案 1 :(得分:1)
使用DateTime::createFromFormat
和DateTime::add
$date = DateTime::createFromFormat('Y-m-d H:i:s', '2014-04-25 02:19:53');
$date->add(new DateInterval('PT3H'));
echo $date->format("d/m/Y H:i:s");
答案 2 :(得分:0)
strtotime在您使用它来计算新时间戳时需要一个时间戳。 在你的情况下:
$newdate = date("d/m/Y H:i:s", strtotime('+3 hours', strtotime($db)));
答案 3 :(得分:0)
太好了,谢谢!
对于其他用户,这是我已完成的代码(已添加8小时)
$db = $row_rsSearch['created_date'];
$date = DateTime::createFromFormat('Y-m-d H:i:s', $db);
$date->add(new DateInterval('PT8H'));
答案 4 :(得分:0)
也可以试试这个:
$db = $row_rsSearch['created_date'];
$newdate = date("d/m/Y H:i:s", strtotime($db.'+3 hours'));