Mailinglisten-Archive |
Dor Betor wrote:
>> Hallo Liste,
>>
>> Ich muss die Delphi 5 Zeit der Form: (float)745799.347 in UNIXTIME bzw.
>> umgekehrt berechnen.
>>
>> Hat dafuer jemand einen Ansatz?
Hallo Leser,
falls es dich interessiert, die Loesung, wie immer ganz einfach, wenn man es
weis.
Dazu habe ich mir nun eine Hilfs-Klasse geschrieben.
MfG
Dor Betor
<?
/**
* $Id: unixtodatetime.inc,v 1.1 2004/02/18 22:18:50 peter Exp $
* @desc Konvertierung UnixTime zu PcTime und umgekehrt.
* Die Unix Zeit zaehlt ab 01.01.1970 00:00:00 die Anzahl der
Sekunden.
* 0 ... 2147483647 Sekunden = 01.01.1970 00:00:00 ... 19.01.2038
03:14:07.
* Die PC Zeit zaehlt ab 30.12.1899 00:00:00 die Tage.Sekunden als
Real.
* 1 Tag = 86400 Sekunden --> 1 Sekunde = 1/86400 =
0.00001157407407407 Tage
* 25569 ist die Differenz zwischen UnixTime und PcTime in Tagen.
* @autor peter at pietzschmann.de
*/
class UnixToDateTime {
/**
* @access privat
* @return integer UnixStartDate
*/
function UnixStartDate ()
{
return 25569;
}
/**
* @desc Convert a unix timestamp to a DateTime value
* @access public
* @param integer UnixTime
* @return float DateTime
*/
function UnixToDateTime ($ts)
{
return ($ts / 86400) + UnixToDateTime::UnixStartDate();
}
/**
* @desc Convert a DateTime value to a unix timestamp
* @access public
* @param float DateTime
* @return integer UnixTime
*/
function DateTimeToUnix ($dt)
{
return round (($dt - UnixToDateTime::UnixStartDate()) * 86400);
}
}
?>
php::bar PHP Wiki - Listenarchive