AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Unix Timesamp

Offene Frage von "delphinia"
Ein Thema von delphinia · begonnen am 22. Jun 2006 · letzter Beitrag vom 22. Jun 2006
Antwort Antwort
delphinia

Registriert seit: 16. Feb 2006
444 Beiträge
 
Delphi 11 Alexandria
 
#1

Unix Timesamp

  Alt 22. Jun 2006, 15:12
Habe Probleme mit diesen Funktionen

Delphi-Quellcode:
UnixStartDate: TDateTime = 25569.0;

function GetUnixTime(Zeit: TDateTime): LongInt;
const UnixDateDelta = 25569;
begin
  // Liefert die Zeit als Unix TimeStamp zurück...
  Result := Round(((Zeit - UnixDateDelta) * 24 * 60 * 60) - 7200.5);
end;

function DateTimeToUnix(ConvDate: TDateTime): Longint;
begin
  //example: DateTimeToUnix(now);
  Result := Round((ConvDate - UnixStartDate) * 86400);
end;

und zwar stimmt der ausgebene Timestamp NICHT

label3.Caption := IntToStr(DateTimeToUnix(now)); Da bekomme ich derzeit den TimeStamp:
1150989210 - Laut php-Timestamp ist es aber 1150982010
Der Delphi-Timestamp verrechnet sich ergo um 7200 Sekunden.

Warum?!


Code kommt von http://www.swissdelphicenter.ch/de/showcode.php?id=844
Doreen
Gruss Doreen
  Mit Zitat antworten Zitat
Gaijin

Registriert seit: 6. Sep 2005
Ort: Österreich
570 Beiträge
 
#2

Re: Unix Timesamp

  Alt 22. Jun 2006, 15:27
Zitat von delphinia:
Da bekomme ich derzeit den TimeStamp:
1150989210 - Laut php-Timestamp ist es aber 1150982010
Der Delphi-Timestamp verrechnet sich ergo um 7200 Sekunden.
Delphi rechnet nur den mit "ConvDate" angegebenen TDateTime-Wert in der lokalen Zeitzone in eine Zahl um. Wenn sich die PHP-Ausgabe um genau 7200 Sekunden unterscheidet, entspricht das der UTC (GMT) Zeit.
MfG
Gaijin
Gaijin.at
  Mit Zitat antworten Zitat
delphinia

Registriert seit: 16. Feb 2006
444 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: Unix Timesamp

  Alt 22. Jun 2006, 15:29
Hmm wie kann ich diesem Vorbeugen?!
Doreen
Gruss Doreen
  Mit Zitat antworten Zitat
Benutzerbild von arbu man
arbu man

Registriert seit: 3. Nov 2004
Ort: Krefeld
1.108 Beiträge
 
Delphi 7 Professional
 
#4

Re: Unix Timesamp

  Alt 22. Jun 2006, 15:32
Einfach -7200 Sekunden rechnen oder ?
Björn
>> http://bsnx.net <<
Virtual DP Stammtisch v1.0"iw" am 19.09.2007 - ich war dabei!
  Mit Zitat antworten Zitat
Gaijin

Registriert seit: 6. Sep 2005
Ort: Österreich
570 Beiträge
 
#5

Re: Unix Timesamp

  Alt 22. Jun 2006, 15:43
Zitat von delphinia:
Hmm wie kann ich diesem Vorbeugen?!
Wenn du von der aktuellen Zeit (Now) die UTC-Zeit benötigst, geht es mit "GetSystemTime" bzw. EncodeDateTime am einfachsten.
MfG
Gaijin
Gaijin.at
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:52 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz