PHP: Konvertieren: Unix Time to File Time

Seite 1 von 1 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/php_konvertieren_unix_time_to_file_time_156513/page_1 - zur Vollversion wechseln!


DJ_Cyberdance schrieb am 15.01.2006 um 13:04

Ich müßte einen Unix-Timestamp mittels PHP ins M$ FileTime Format konvertieren. M$ sagt freundlicherweise wies geht:

http://support.microsoft.com/defaul...B;en-us;q167296

Aber das ist leider für C++, nicht für PHP... hat jemand eine Idee, wie ich das in PHP bewerkstelligen könnte? Ich brauch keinen 64bit-Wert, 2x32bit (die dort erwähnten dwLowDateTime und dwHighDateTime) würden mir reichen, auch ein String wär ok... Hat jemand eine Idee?


samuel schrieb am 15.01.2006 um 23:03

ich stand neulich bei einer mobilen anwendung fuer den nokia 9500 communicator vor einem vergleichbaren problem.

in der J2ME gibt es eine abstracte klasse Calendar welche felder enthaelt, die man durch die uebergabe der unix system time berechnen kann. moeglicherweise findest du nach etwas suchen fuer php vergleichbare funktionen/methoden/klassen/whatever...

hth
sam


atrox schrieb am 18.01.2006 um 04:18

das problem ist nicht die umrechung (unixtime hat eine auflösung von 1 sec und startet 1.1.1970) (win32 filetime hat eine auflösung von 100 nsec und startet 1.1.1601): die ist mit einem offset und einer linearen skalierung bewerkstelligt:
win32filetime=unixtime*10000000+116444736000000000;

das problem ist, daß php überlicherweise nur 32 bit integer unterstützt, und daher diese rechnung gar nicht durchführen kann.

du könntest dich natürlich mit einem näherungswert zufrieden geben, und als fließkomma berechnen, und hinterher in ein hi-integer und low-integer konvertieren - was allerdings auch nicht so unproblematisch ist, weil php nur signed integers kann. wenn ein string reicht, kann man das float immer noch in einen string umwandeln.

andere möglichkeit einer exakten lösung ist das verwenden einer library für beliebig lange ganzzahlen, wie der gmp - oder das ausprogrammieren von addition und multiplikation auf zeichenketten.




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2026