[php]sekunden in jahr, monat, tag, sekunden....

Anachronist

Well-known member
ID: 255289
L
24 August 2006
280
11
Hi,
ich hab mit date("U") die anzahl der sekunden seit beginn der unix epoche herausgefunden.
nun möchte ich jetzt die sekunden in jahr tag montag stunden usw umrechnen.
ich hatte da schon an mktime gedacht aber dort kann man die sekunden (also date("U") ) ja nich angeben, oder? kennt jemand viellecht eine andere methode, die das gewünschte ergebnis liefert?
mfg
 
ich hab mit date("U") die anzahl der sekunden seit beginn der unix epoche herausgefunden.
Da kannst du dir date() sparen, weil man dazu time() nimmt.

Gehts hier um absolute oder relative Zeitangaben ?
Kannst du mal ein Beispiel machen, was du umrechnen willst ?
 
Wenn du den aktuellen Tag angeben willst dann schau mal hier^^
=> https://de.php.net/date
Dort kannst du als zweiten Parameter auch den Timestamp angeben (entweder vorher halt mal date("U") [unschön] oder time() gespeichert)
 
Da kannst du dir
Gehts hier um absolute oder relative Zeitangaben ?
Kannst du mal ein Beispiel machen, was du umrechnen willst ?

hi, was ist denn mit absoluter und relativer zeitangabe gemeint?

ich habe folgene zahl: 1178405991
die hab ich mit date() / time() rausgefunden. also die anzahl der sekunden seit 1.1.1970 und ich möchte jetzt halt aus diesen sekunden das datum ausrechnen.
also 1178405991 entspricht 06.05.2007

das mach ich, weil ich angeben will, wann ein bestimmter user das latzte mal online war.
wenn ich das datum jetzt nicht als sekunden abspeicher sondern als richtiges datum (tag.monat. jahr....). Dann geht mein onlineticker nicht mehr, also wird das ausgeschlossen.
 
ich habe folgene zahl: 1178405991
die hab ich mit date() / time() rausgefunden. also die anzahl der sekunden seit 1.1.1970 und ich möchte jetzt halt aus diesen sekunden das datum ausrechnen.
also 1178405991 entspricht 06.05.2007
.
Bei der Beschreibung zu Date steht folgendes:
Description
string date ( string $format [, int $timestamp] )
Ergo muss das bei dir so aussehen:
PHP:
$timestamp=1178405991;
echo date('d.m.Y',$timestamp);
 
danke es funktioniert ;)
bei php.net hab ich kein beispiel gefunden, und mit diesen komischen beschreibungen komm ich immer nich kla, aber eig ist das ja ganz logisch
 
hi, was ist denn mit absoluter und relativer zeitangabe gemeint?
Ich dachte, du könntest vielleicht relative Zeitangabe meinen, d.h. "4:33:44" als "4 Stunden, 33 Minuten und 44 Sekunden" zu verstehen und nicht als "4 Uhr 33 und 44 Sekunden". Das funktioniert nämlich mit Timestamps nicht so ohne weiteres.
bei php.net hab ich kein beispiel gefunden, und mit diesen komischen beschreibungen komm ich immer nich kla, aber eig ist das ja ganz logisch
Es wird einfach jedes Zeichen im Formatstring (1. Parameter) entsprechend der Tabelle, die du im Manual findest, ersetzt. Mehr is das ganze mit date() nicht.
 
Bei der Beschreibung zu Date steht folgendes:

Ergo muss das bei dir so aussehen:
PHP:
$timestamp=1178405991;
echo date('d.m.Y',$timestamp);

ob dort eine Variable steht oder eine Zahl ist relativ egal ;)
Das in derDoku steht, dass das die Var $timestamp heisst, folgert nur daraus, dass die Funktion den Wert, den sie bekommt so speichert und die Doku mittels der Reflection-Api erstellt wurde und dies daher ausgelesen hat.