вторник, 1 сентября 2009 г.

В каком формате хранится дата/время в LDAP?

Cредствами php подключился к ldap получил данные,
вот этот набор цифр 128436840000000000 должен соответствовать 1 января 2008 года

Формат называется AD time stamp
вот функция конвертирования в unix time stamp:




// $dateLargeInt - nano seconds (yes, nano seconds) since jan 1st 1601
function AD2UnixTimeConvert($dateLargeInt) {
$secsAfterADEpoch = $dateLargeInt / (10000000); // seconds since jan 1st 1601
$ADToUnixConvertor = ((1970-1601) * 365.242190) * 86400; // unix epoch - AD epoch * number of tropical days * seconds in a day
$unixTimeStamp = intval($secsAfterADEpoch-$ADToUnixConvertor); // unix Timestamp version of AD timestamp
$friendlyDate = date("d-m-Y", $unixTimeStamp); // formatted date
return $friendlyDate;
}

Комментариев нет:

Отправить комментарий