Здравствуйте! Стоит задача преобразовать WinApi FILETIME в unixtime. поступаю следующим образом: Код (Text): $time = fread($f, 8); $unixtime = bin2hex($time); $unixtime = base_convert($unixtime, 16, 10); $iunixtime = (float)$unixtime; $iunixtime = $iunixtime/1000000; $iunixtime = $iunixtime - 11644473600; $iunixtime = (int)$iunixtime; Если честно, то на выходе получается фигня. Подскажите, где же я ошибаюсь. Заранее спасибо!
А не легче воспользоваться наряду с остальными финкциями WinAPI, например, FileTimeToSystemTime ? Например, именно в таком формате записать файл, а уже на сервере его отформатировать в аналог unix timestamp?
Это парсер JTV, т.е. автоматом будут подсовываться файлы, дополнительное звено с виндовой машиной явно ни к чему =)
Действительно забыл, что кроме ru, есть и другие зоны =) Ошибка заключалась в том, что забыл flip`нуть старшее-младшие слова в 64-й структуре.