列date
为timestamp
- 默认 - current_timestamp
示例值:2017-04-07 09:45:53
$stmt = $db->query("select * from cinema order by date desc");
while($row = $stmt->fetch()){
$date = strtotime($row['date']);
$datea = date("d-m-y", $date);
$time = date("H:i", $date);
与我的时区相比,我得到了-2小时的差异 - 09:45
而不是11:45
- 所以我尝试了:
$stmt = $db->query("SELECT *, CONVERT_TZ(date, '+00:00', '+01:00') FROM cinema order by date desc"); - without success
我还尝试将列类型从timestamp (current_timestamp)
更改为datetime (current_timestamp)
。
仍然有-2小时的差异。
任何帮助?
答案 0 :(得分:1)
您可以尝试以下内容:
$stmt = $db->query("SELECT *, CONVERT_TZ(date, @@session.time_zone, '+02:00') AS mydate FROM cinema order by mydate desc");
以下是一些在处理日期和时间时可能有用的阅读材料: https://stackoverflow.com/a/19075291/1363190