Mailinglisten-Archive |
At 21:34 29.08.99 +0200, Martin Ramsch wrote:
>Lars Scholand schrieb am Sonntag, den 29. August 1999:
>> $Stunden = Number_Format($Gesamt, 0, ",", ".");
>> $Minuten = Number_Format(($Gesamt - $Stunden) * 60);
>>
>> return $Stunden." ".$Minuten;
>
>Die Funktion "Number_Format" ist hier ungeeignet, weil sie eigentlich
>nicht dazu gedacht ist, mit Zahlen zu rechnen, sondern eine hübsch
>lesbare Textdarstellung einer Zahl zu liefern.
>
>Deinem Ansatz folgend geht es so:
> $Stunden = floor( $Gesamt );
> $Minuten = floor( ($Gesamt-$Stunden)*60 );
> return "$Stunden $Minuten";
>
>Siehe 'floor' bei den mathematischen Funktionen im PHP-Handbuch.
>
>Ein anderer Ansatz ist, diese Zeitangabe einfach in Sekunden
>umzurechnen (*60) und dann die Funktion 'date' zu verwenden:
> return date('i s', $Gesamt*60);
Hi,
ich hatte mir einen anderen Lösungsansatz überlegt:
$Stunden = (int) $Gesamt;
$Minuten = (int) (($Gesamt-$Stunden)*60);
Dürfte IMHO schneller sein (wobei kein allzu großer Unterschied
feststellbar sein dürfte ;)
BTW: Kann mir jemand sagen, wieso:
$Minuten = (int) ($Gesamt-$Stunden)*60;
nicht funktioniert? Das (int) bezieht sich doch normal auf den kompletten
folgenden Ausdruck, oder?
Bye
Dante
php::bar PHP Wiki - Listenarchive