我想在本地时区显示日期,但我已将日期保存为UTC,有任何可以使用php在本地时区显示。
答案 0 :(得分:0)
PHP的strtotime
函数将解释时区代码,如UTC。如果你从没有时区代码的数据库/客户端获得日期,但知道它是UTC,那么你可以追加它。
假设您获得带有时间戳代码的日期(例如“Fri Mar 23 2012 22:23:03 GMT-0700(PDT)”,这是Javascript代码""+(new Date())
给出的):
$time = strtotime($dateWithTimeZone);
$dateInLocal = date("Y-m-d H:i:s", $time);
如果你不这样做,那么可能来自MySQL,那么:
$time = strtotime($dateInUTC.' UTC');
$dateInLocal = date("Y-m-d H:i:s", $time);
或者
date()
和localtime()
都使用服务器的本地时区,除非被覆盖;您可以覆盖与date_default_timezone_set()
一起使用的时区。
您可能会发现这些链接很有用