PHP Timestamp mit 13 ziffern generieren?

Proktologe

Lt. Junior Grade
Registriert
Sep. 2006
Beiträge
341
Hi,

hier mein Problem. In meiner MySQL DB ist der Timestamp 13 stellig abgespeichert. Diesen abzufragen ist kein Thema, nur die weitere Verarbeitung verstehe ich noch nicht so recht.

Ich habe 2 Felder in denen ich eine Start- und eine Endzeit eintrage (nur die HH:MM, mehr nicht). Daraus bilde ich dann einen timestamp. Das ist auch kein Problem. Dieser timestamp ist dann aber nur 10 stellig. Und ich weiss nicht so recht, wie ich aus der HH:MM einen 13 stelligen TS erstelle.

Denn: Ein Query wird logischerweise nichts zurueckliefern, wenn ich 10 stellige mit 13 stelligen timestamps vergleiche (oder eher Unsinn zurueckliefern).

Habt ihr Tipps, wie ich den 13 stelligen TS erstellen kann?

Danke,
Prok
 
Hallo,

der von dir generierte 10 stellige Timestamp ist ein UNIX Timestamp. Je nach MySQL-Version/Konfiguration wird die Bedeutung des Feldes "Timestamp" in MySQL anderst interpretiert.

Im Timestamp in der MySQL-Datenbank sollte normalerweise z.Bsp. 2010-01-25 15:36:11 drin stehen und dies könnte man auch mit 20100125153611 eintragen lassen.

Eigentlich sollten diese Timestamps immer eine gerade Anzahl von Stellen haben. Wieso du nun einen 13stelligen hast, frag ich mich auch??!!

Zeig mir mal bitte ein bisschen Code, wie du den Timestamp abfrägst...

Gruß
Midi
 
Ich versteh die Frage nicht.
Inwiefern ist bitteschön die LÄNGE der Timestamp relevant?

Timestamp: 1 = > 01.01.1970
Timestamp: 70365312 => 25.03.1972
Timestamp: 1264431701 => 25.01.2010
 
Zuletzt bearbeitet:
Hi,

folgendes: Der timestamp in der DB ist nicht von mir vergeben, sondern wird ueber eine middleware (GSN - Global Sensor Network) vergeben. Dieser ist -leider- 13 stellig.
Ein jetziger sieht ca so aus: 1264426215877.

Warum die Laenge 13 ist? Ich gehe davon aus, dass er in microsekunden ist.

Ich habe nur den Fehler gemacht, den 10 stelligen timestamp zu vergroessern (einfach "000" angehangen). Das fuehrte zu nicht gewollten Ergebnissen.
Danach kam ich auf die Idee, den timestamp einfach vor dem Vergeben /1000 zu teilen.

Das sieht schon besser aus. War also irgendwie mein Fehler :)
 
Zurück
Oben