Есть ли разница в форматах меток времени, используемых iOS и PHP? - PullRequest
2 голосов
/ 08 июня 2011

Я получил некоторые временные метки из консолидированного.db на моем iPhone (тот, что недавно был из «скандала» с отслеживанием местоположения).Я сделал небольшую страницу PHP, чтобы преобразовать их в красиво отформатированные даты и затем вывести список, но я получаю даты с 1980 года.

Используют ли они другую систему?Или в файле Consolid.DB указаны неверные данные?

Пример отметки времени: 316777502 Мой код: $date = date("t M Y", $timestamp);

1 Ответ

3 голосов
/ 05 июля 2011

Я нашел статью, в которой подробно описан ручной процесс, с помощью которого можно просматривать данные:

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

Согласно этой статье, временные метки не являются традиционными временными метками количества секунд с 01.01.1970, а вместо этого основаны на количестве секунд с 01.01.2001 (таким образом, существует смещение на 31 год). ). Я не могу подтвердить, верно ли это, но если мы следуем предположению, что это так, мы должны добавить число секунд в 31 году (978264705) к метке времени, чтобы изменить ее на традиционную метку времени, дающую количество секунд от 1 / 1/1970. Строка, которую вы разместили, будет заменена на следующую:

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