我从iPhone上的solidated.db获得了一些时间戳(最近来自位置跟踪的“丑闻”)。我做了一个小小的PHP页面,将它们转换为格式正确的日期,然后输出一个列表,但是我从1980年开始获取日期。

他们使用其他系统吗?还是consolidated.db的数据不正确?

时间戳示例:316777502
我的代码:$date = date("t M Y", $timestamp);

最佳答案

我找到了一篇文章,其中详细介绍了可以查看数据的手动过程:

http://dropstones.blogspot.com/2011/04/extracting-iphone-ios4-location-data-in.html

根据该文章,时间戳不是从1970年1月1日开始的秒数的传统时间戳,而是基于从1/1/2001年开始的秒数(因此存在31年的偏移量)。我无法确认这是否正确,但是如果我们遵循这样的假设,则必须将31年中的秒数(978264705)添加到时间戳中,以将其更改为传统时间戳,使秒数从1 / 1/1970。因此,您发布的行将被替换为:

$timestamp += 978264705;
$date = date("t M Y", $timestamp);

09-11 09:37
查看更多