Hallo IceDragon,
Ich hab folgendes Problem: Eine .php Datei soll aus deine
MySQL Tabelle einen Wert auslesen [UNIX-Zeit]. Bis dahin kein
Problem.
Allerdings soll das Script diesen Wert nicht als Sekundenwert,
sondern als „Normale“ Datums/Uhrzeit ausgeben.
Auf deutsch: Ich möchte am ende das Ergebnis 27.8.2007
18:15:58 stehen haben, wenn in der Tabelle der Wert 1188231358
steht [ihr wisst ja, Sekunden seid 1.1.1970].
Verschiedene Möglichkeiten:
strftime (string format, int timestamp)
gibt einen durch format definierten String zurück, der der Unixzeit (=timestamp) entspricht. Also
print(strftime("%d.%m.%Y %H:%M:%S", unixzeit))
als längste Variante. was die einzelnen Abkürzungen bedeuten, siehst Du sicher selbst.
Wenn Du vorher
setlocale ("LC\_TIME", "de\_DE")
ausgeführt hast, kannst Du auch als String bei strftime einfach „%x %X“ benutzen (habe ich jetzt aber nicht extra ausprobiert). Gibt noch mehr Parameter, aber die kannst Du alle in der Hilfe nachlesen.
Du kannst auch
array localtime (int timestamp [, bool is\_associative])
das, wenn is_associative auf 1 gesetzt ist, ein associatives Array zurückliefert mit folgenden Schlüsseln:
tm_sec Skekunde
tm_min Minute
tm_hour Stunde
tm_mday Tag des Monats
tm_mon Monat des Jahres
tm_year Jahr
tm_wday Tag der Woche
tm_day Tag des Jahres
tm_isdst Sommerzeit muss berücksichtigt werden
Ist is_associative nicht oder auf Null gesetzt, wird ein normales Array zurückgeliefert.
Ach so, das ganze funktioniert unter PHP 5, aber ich denke, zumindest strftime gibt es auch in PHP 4.
Viele Grüsse
Klaus Bernstein