[PHP] ausrechnung der diferenz zwischen 2 timestamps

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
dr_Alex
Mitglied
Beiträge: 93
Registriert: 19.04.2003 16:43
Wohnort: Bad Berleburg

[PHP] ausrechnung der diferenz zwischen 2 timestamps

Beitrag von dr_Alex »

das problem ist eigentlich sehr einfach aber ich kriege das irgentwie nicht gelöst. ich habe 2 timestamps. eine ist das aktuelle datum und zeit das andere ist ne bestimmte zeit 3-4 tage später. ich möchte diese diferenz in tagen, std, min und sec wieder geben. hab etwas rum experementirt und dabei kan dies heraus:

datum jetzt: 15.07.2004 - 13:53:48 (1089892422)
datum später: 22.07.2004 - 11:49:57 (1090489797)

Code: Alles auswählen

$temp = $datum_spaeter -  mktime(date("H,i,s,d,m,y"));
$tage = floor ($temp/5184000);
$temp = $temp - $tage * 5184000;
$std = floor ($temp/216000);
$temp = $temp - $std*216000;
$min = floor ($temp/3600);
$sec = $temp - $min*3600;
echo $tage." Tage ".$std." Std ".$min." Min ".$sec." Sec ";
ausgeben tut er das hier:

2 Tage 2 Std 45 Min 3375 Sec

ich weis nicht aber normal müsste ja was anderes kommen oder ich hab etwas unlogisch gedacht (ich hoffe das erste :))

danke vorraus
mfg alex
cooler forum für deutsch-russisch sprachigen menschen: http://www.russian-board.com ...
wenn jemand seinen mod auf russisch haben will dann schickt mir eine PM und ich werde das gerne für euch übersetzen ...
PhilippK
Vorstand
Vorstand
Beiträge: 14662
Registriert: 13.08.2002 14:10
Wohnort: Stuttgart
Kontaktdaten:

Beitrag von PhilippK »

Versuch mal

Code: Alles auswählen

$temp = $datum_spaeter -  time();
Das was du da machst, ist relativ unsinnig...

Gruß, Philipp
Kein Support per PN!
Der Sozialstaat ist [...] eine zivilisatorische Errungenschaft, auf die wir stolz sein können. Aber der Sozialstaat heutiger Prägung hat sich übernommen. Das ist bitter, aber wahr. (Horst Köhler)
Meine Mods
dr_Alex
Mitglied
Beiträge: 93
Registriert: 19.04.2003 16:43
Wohnort: Bad Berleburg

Beitrag von dr_Alex »

ja klar das geht ja, aber ich will die ausgabe nicht in sekunden haben sondern umgerechnet nach tagen, stunden, min und sekunden. und dabei haperts es ein wenig. mit time() kommt auch was falsche raus

aber danke trotzdem :)
mfg alex
cooler forum für deutsch-russisch sprachigen menschen: http://www.russian-board.com ...
wenn jemand seinen mod auf russisch haben will dann schickt mir eine PM und ich werde das gerne für euch übersetzen ...
PhilippK
Vorstand
Vorstand
Beiträge: 14662
Registriert: 13.08.2002 14:10
Wohnort: Stuttgart
Kontaktdaten:

Beitrag von PhilippK »

Was kommt denn dann raus? Du solltest natürlich nur die eine Zeile ersetzen... ;-)

Gruß, Philipp
Kein Support per PN!
Der Sozialstaat ist [...] eine zivilisatorische Errungenschaft, auf die wir stolz sein können. Aber der Sozialstaat heutiger Prägung hat sich übernommen. Das ist bitter, aber wahr. (Horst Köhler)
Meine Mods
dr_Alex
Mitglied
Beiträge: 93
Registriert: 19.04.2003 16:43
Wohnort: Bad Berleburg

Beitrag von dr_Alex »

ja ich hab ja nur die eine ersetzt aber das hab nicht gebrach da
mktime(date("H,i,s,d,m,y")) == time() ist soweit wie ich das getestet habe
cooler forum für deutsch-russisch sprachigen menschen: http://www.russian-board.com ...
wenn jemand seinen mod auf russisch haben will dann schickt mir eine PM und ich werde das gerne für euch übersetzen ...
PhilippK
Vorstand
Vorstand
Beiträge: 14662
Registriert: 13.08.2002 14:10
Wohnort: Stuttgart
Kontaktdaten:

Beitrag von PhilippK »

Jetzt hab ich's - du bist bei den Einheiten verrutscht:

Code: Alles auswählen

$temp = $later - $now;
$tage = floor ($temp/86400); 
$temp = $temp - $tage * 86400; 
$std = floor ($temp/3600); 
$temp = $temp - $std*3600; 
$min = floor ($temp/60); 
$sec = $temp - $min*60; 
Gruß, Philipp
Kein Support per PN!
Der Sozialstaat ist [...] eine zivilisatorische Errungenschaft, auf die wir stolz sein können. Aber der Sozialstaat heutiger Prägung hat sich übernommen. Das ist bitter, aber wahr. (Horst Köhler)
Meine Mods
dr_Alex
Mitglied
Beiträge: 93
Registriert: 19.04.2003 16:43
Wohnort: Bad Berleburg

Beitrag von dr_Alex »

ohhhh ich entschuldige mich vielmals für diesen eigentlich sinnlosen post da der fehler total dumm war :)

ich hab einmal zu viel durch 60 geteilt :)

danke philippK für den versuche mir zu helfen :)

der code müsste so richtig lauten

Code: Alles auswählen

$temp = $datum_spater - time();
$tage = floor ($temp/86400);
$temp = $temp - $tage * 86400;
$std = floor ($temp/3600);
$temp = $temp - $std*3600;
$min = floor ($temp/60);
$sec = $temp - $min*60;

echo $tage." Tage ".$std." Std ".$min." Min ".$sec." Sec "
mfg
alex
cooler forum für deutsch-russisch sprachigen menschen: http://www.russian-board.com ...
wenn jemand seinen mod auf russisch haben will dann schickt mir eine PM und ich werde das gerne für euch übersetzen ...
dr_Alex
Mitglied
Beiträge: 93
Registriert: 19.04.2003 16:43
Wohnort: Bad Berleburg

Beitrag von dr_Alex »

looool ich glaube ich hab den beitrag zu lange verfasst, ok du warst schneller :)

danke dir vielmals :)
cooler forum für deutsch-russisch sprachigen menschen: http://www.russian-board.com ...
wenn jemand seinen mod auf russisch haben will dann schickt mir eine PM und ich werde das gerne für euch übersetzen ...
Antworten

Zurück zu „Coding & Technik“