zukünftiger unixzeitstempel in "normales datum" umwandeln
cr
- php
0 Stefan M.0 Dodwin0 Christian Seiler
hallo,
ich möchte einen unixzeitstempel, der aber noch in der zukunft ist, umwandeln in ein echtes datum.
ich habe im netz nur folgendes gefunden:
date("H:i",hier der unixzeitstempel rein);
leider kommt da der fehler,
date() expects parameter 2 to be long, tring given in ...
wie kann ich so ein datum umwandeln?
danke cr
Wenn da steht: "date() expects parameter 2 to be long, tring given in ...", dann mach das doch bitte auch.
Statt
date("H:i", $timestamp);
schreibst du
date("H:i", (int) $timestamp);
Falls das nichts hilft, prüfe bitte mit is_numeric($timestamp) oder (wenn das Problem bleibt) mit
( (string) (int) $timestamp ) == $timestamp
ob es sich auch wirklich um eine Zahl handelt. Dabei ist $timestamp natürlich durch die Variable zu ersetzen, auf der du den Timestamp speicherst.
Hallo cr,
ich möchte einen unixzeitstempel, der aber noch in der zukunft ist, umwandeln in ein echtes datum.
http://de.php.net/manual/de/function.date.php
1. Anmerkung: Das ganze geht nur bis zum "Tue, 19 Jan 2038 03:14:07 GMT".
Wenn es noch weiter vorne liegt, rechne vorher einfach ein paar Jährchen runter.
Falls es dir wirklich nur um "H:i" (Stunde+Minute) geht, ist das ja sogar egal. Ansonsten rechnest du eben hinterher die Jahre wieder drauf.
Gruß,
Dodwin
echo $begrüßung;
ich möchte einen unixzeitstempel, der aber noch in der zukunft ist, umwandeln in ein echtes datum.
http://de.php.net/manual/de/function.date.php
- Anmerkung: Das ganze geht nur bis zum "Tue, 19 Jan 2038 03:14:07 GMT".
Wenn es noch weiter vorne liegt, rechne vorher einfach ein paar Jährchen runter.
Der Unix-Timestamp-Wert liegt doch schon vor. Nicht die date()-Funktion ist hier das Problem, sondern der Wertebereich eines Unix-Timestamps. Dieser geht bei einem 32-Bit-Integer nur bis zum von dir zitierten Zeitpunkt.
echo "$verabschiedung $name";
hi,
Wenn es noch weiter vorne liegt, rechne vorher einfach ein paar Jährchen runter.
Falls es dir wirklich nur um "H:i" (Stunde+Minute) geht, ist das ja sogar egal.
Nö, nicht egal - insb. was Stunden:Minuten angeht nicht.
Mit Sommer-/Winterzeit kommst du da schnell in Bedrängnis - weil deren Anfang/Ende ja schliesslich von Jahr zu Jahr auf einem anderen Datum liegt.
gruß,
wahsaga
Hallo cr,
date() expects parameter 2 to be long, tring given in ...
Die Fehlermeldung kommt nur, wenn der zweite Parameter (Dein Zeitstempel) nicht numerisch ist. Das muss nicht notwenidgerweise heißen, dass das wirklich vom internen PHP-Typ her eine Zahl sein muss (das ist relativ egal), sondern dass es sinnvoll in eine Zahl konvertierbar sein muss. Das heißt:
date ('H:i', 1172055234); // funktioniert
date ('H:i', "1172055234"); // funktioniert
date ('H:i', "blubber"); // spuckt obige Warnung aus
Wenn obige Warnung also kommt, fütterst Du die Funktion also gar nicht mit einem UNIX-Timestamp.
Viele Grüße,
Christian