Wenn ich wieder an das LDAP-Attribut "pwdLastSet" eines Active Directory mit PHP bekomme ich einen Wert wie 1.29265206716 E+17. Ich weiß, dass dieser Wert stellt das Datum dar, "Tue Aug 17 2010 14:11:11 GMT+0200".
Wie kann ich konvertieren Sie diesen Wert auf einen Unix-timestamp in PHP? Vielen Dank für alle Hinweise!
Finden Sie hier.
Eigentlich läuft es auf die Umwandlung der
FILETIME
timestamp in einen UNIX-timestamp:Sehen http://php.net/manual/en/ref.ldap.php für details
@etranger - Korrektur: sollte timestamp von 1601 statt 1600.
Beziehen sich auf offizielle microsoft-website: http://msdn.microsoft.com/en-us/library/ms675243%28v=vs.85%29.aspx
Gibt es auf dieser Seite was darauf hindeutet, dass es ist "100-Nanosekunden-Einheiten vergangen, seit 1.1.1601 00:00:00", könnte dies hilfreich sein.
EDIT: 1600 »» 1601
Ich denke, der erste Schritt ist, zu verstehen, was die LDAP-Werte wirklich bedeuten - wenn man das einmal geschafft, ist der rest einfach.
Gibt es einige LDAP-Attribute, die sich mit Terminen. pwdLastSet und accountExpires haben Werte wie 127524839567199000 und whenChanged hat Werte wie 20050210223453.0 Z - und beide Werte beziehen sich auf das gleiche Datum 10-FEB-2005.
Für eine einfache Erklärung finden Sie http://maxvit.net/convert_ldap_dates
Hoffe, das hilft!