[php] Zeitraum berechnen -> steh aufm schlauch

chrisi01

Romy lieb haben
ID: 101113
L
26 November 2008
2.854
238
hi

folgender Code:
Code:
$laufzeit_min = 10;
$std1 = date("h",$laufzeit_min);
$min1 = date("i",$laufzeit_min);
$sec1 = date("s",$laufzeit_min);
$laufzeit_min = ''.$std1.' Stunden - '.$min1.' Minuten - '.$sec1.' Sekunden';

er gibt mir aber 1std 0min 10sec aus kommt wohl irgendwie durch Sommer/Winterzeit zu Stande. gehe ich richtig in der Annahme das wenn ich die Stunde einfach abziehe es in der Sommerzeit wieder nicht mehr klappt? Gibts da nen trick?

edit:
Code:
$laufzeit_min = 3609;
if ($laufzeit_min >= 3600)
{
$std1 = floor($laufzeit_min / 3600);
}
if ($laufzeit_min - $std1*3600 >= 60)
{
$min1 = floor(($laufzeit_min / 60) - $std1*60);
}
$sec1 = floor($laufzeit_min - $std1*3600 - $min1*60);
$laufzeit_min = ''.$std1.' Stunden - '.$min1.' Minuten - '.$sec1.' Sekunden';
aber so recht das ware ist es doch noch immer nicht oder?

mfg

chris
 
Zuletzt bearbeitet:
diese Verwendung von date() ist auch ziemlich holprig... du bist nämlich bei 10sec dann im Jahre 1970, am ersten Jänner um 00:00:10, und dann hast du noch ein kleines Problem mit der Zeitzone, die bei deinem server nämlich scheinbar GMT +1 ist. Der Timestamp ist aber UTC, und date addiert somit die stunde rauf. Im Sommer wären es dann halt 2 Stunden
mach es doch simpel:

PHP:
$mytime=10;
$hours=floor($mytime/3600);
$mytime-=$hours*3600;
$minutes=floor($mytime/60);
$mytime-=$minutes*60;
$seconds=$mytime;

echo strval($hours).' Stunden - '.strval($minutes).' Minuten - '.strval($seconds).' Sekunden';
//somit hast du sekunden, minuten und stunden.