将毫秒日期转换为php中的时间戳

时间:2018-04-19 16:59:50

标签: php timestamp

我使用的API返回日期Intent和时间戳@Override protected void onActivityResult (int requestCode, int resultCode, Intent data){//code}

在PHP中如何将2018-04-19 20:32:51.439702之类的日期转换为这样的时间段?

2 个答案:

答案 0 :(得分:4)

将字符串转换为DateTime对象,您可以使用日期格式字符串格式化部分 http://php.net/manual/en/function.date.php

例如:

{
....
"field1": "Lorem ipsum dolor sit amet, purus erat aliquam pretium quisque mauris hymenaeos, vestibulum erat nec justo. Luctus orci non etiam at eros, duis rem dui morbi purus justo pellentesque. Vehicula velit eleifend adipiscing, odio malesuada non in ut justo diam. Conubia consequat nec. Nunc in scelerisque, libero adipiscing accumsan non tempor, nibh aliquid tortor vel. Vestibulum praesent enim id vel. Commodo eros nec est proin, mi ut ipsum, lectus varius pede a aliquet mauris, a scelerisque varius scelerisque praesent. Sapien commodo tristique, curabitur pellentesque velit praesent nonummy. Ut nec nulla consectetuer euismod, ultrices leo interdum feugiat, dapibus blandit dui consequatur arcu morbi. Sem nisl amet. Sit ante nam magna. Pulvinar adipiscing iaculis sed sit donec magna, libero urna sed, sit id facilisis integer in, ipsum justo sociosqu eu. Non eu ac donec pede, aenean imperdiet ut massa eu, nunc bibendum. Vehicula urna massa penatibus blandit interdum diam, semper cras nec purus nonummy elit. Ut augue malesuada eget a, amet rhoncus suscipit, sapien augue integer a facilisi. Sed a quisque dapibus. Lectus malesuada ante penatibus, eget volutpat etiam aliquam, integer nullam ut quam turpis. Sapien sapien ante, vestibulum ipsum risus neque mus lectus libero, ipsum nulla aptent. Eget lorem, ridiculus quis lectus placerat, dapibus eget libero. Mi in, massa eget anim malesuada eget vestibulum tellus. Non ac possimus turpis sit quam officiis, lorem donec mollis quam non maecenas iaculis, sit condimentum, ut erat orci aliquam hymenaeos id, duis proident massa non adipiscing vehicula.",
"field2": "Lorem ipsum dolor sit amet, purus erat aliquam pretium quisque mauris hymenaeos, vestibulum erat nec justo. Luctus orci non etiam at eros, duis rem dui morbi purus justo pellentesque. Vehicula velit eleifend adipiscing, odio malesuada non in ut justo diam. Conubia consequat nec. Nunc in scelerisque, libero adipiscing accumsan non tempor, nibh aliquid tortor vel. Vestibulum praesent enim id vel. Commodo eros nec est proin, mi ut ipsum, lectus varius pede a aliquet mauris, a scelerisque varius scelerisque praesent. Sapien commodo tristique, curabitur pellentesque velit praesent nonummy. Ut nec nulla consectetuer euismod, ultrices leo interdum feugiat, dapibus blandit dui consequatur arcu morbi. Sem nisl amet. Sit ante nam magna. Pulvinar adipiscing iaculis sed sit donec magna, libero urna sed, sit id facilisis integer in, ipsum justo sociosqu eu. Non eu ac donec pede, aenean imperdiet ut massa eu, nunc bibendum. Vehicula urna massa penatibus blandit interdum diam, semper cras nec purus nonummy elit. Ut augue malesuada eget a, amet rhoncus suscipit, sapien augue integer a facilisi. Sed a quisque dapibus. Lectus malesuada ante penatibus, eget volutpat etiam aliquam, integer nullam ut quam turpis. Sapien sapien ante, vestibulum ipsum risus neque mus lectus libero, ipsum nulla aptent. Eget lorem, ridiculus quis lectus placerat, dapibus eget libero. Mi in, massa eget anim malesuada eget vestibulum tellus. Non ac possimus turpis sit quam officiis, lorem donec mollis quam non maecenas iaculis, sit condimentum, ut erat orci aliquam hymenaeos id, duis proident massa non adipiscing vehicula.",
...
}

输出:

echo (new \DateTime("2018-04-19 20:32:51.439702"))->format("U.u");

答案 1 :(得分:0)

假设秒后总是跟着6位数,并且您希望时间戳只有两个小数点,那么您可以这样做:

$date = "2018-04-19 20:32:51.439702";
echo strtotime(explode('.', $date)[0]).'.'.explode('.', (explode('.', $date)[1]/10000))[0];

在“美国/太平洋”时区,这会产生:

1524195171.43

如果你想要1524195171.439702,请使用:

$date = "2018-04-19 20:32:51.439702";
echo strtotime(explode('.', $date)[0]).'.'.explode('.', $date)[1];