Java时间戳到php时间戳

时间:2016-12-14 13:19:21

标签: java php date timestamp

我想将Java时间戳转换为php时间戳。我有一个创建JSON对象的java代码,并将此对象的内容发送到php页面,该页面应将它们存储到数据库中。

我的问题是,时间戳不同。

爪哇:

Wed Dec 14 14:06:07 CET 2016

输出(转换后的长度):

1481720767015

在php上我尝试了两种不同的解决方案:

PHP:

echo date('d.m.Y H:i:s', intval("1481720767015")/1000);
echo "<br>".gmdate('d.m.Y H:i:s', intval("1481720767015")/1000);

输出:

14.12.2016 08:06:07
14.12.2016 13:06:07

那么如何更改时区以使第二个输出到正确的时间/时区?

2 个答案:

答案 0 :(得分:1)

此处存在类似问题:PHP date(); with timezone?

解决方案是 - 您需要在创建日期对象时传递时区,如下所示:

$tz = 'Europe/London';
$timestamp = time();
$dt = new DateTime("now", new DateTimeZone($tz)); //first argument "must" be a string
$dt->setTimestamp($timestamp); //adjust the object to correct timestamp
echo $dt->format('d.m.Y, H:i:s');

答案 1 :(得分:0)

谢谢你。我找到了另一个解决方案:

$time = gmdate('d.m.Y H:i:s', intval("1481720767015")/1000);
$time = date('d.m.Y H:i:s', strtotime($time)+60*60);