PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   PHP Grundlagen (http://www.selfphp.de/forum/forumdisplay.php?f=12)
-   -   eine Zahl formatieren! (http://www.selfphp.de/forum/showthread.php?t=4983)

OlliT 21.07.2003 16:11:30

eine Zahl formatieren!
 
Hallo,

ich habe eine Zahl = 100.000 da möchte ich gerne die letzten 3 Nullen und den Punkt weg haben, allerdings ändert sich diese Zahl(größenangabe). Die Zahl kann auch 100.050 sein, dann möchte ich natürlich nur die letzte Null weg haben. Wie kann ich das machen?

Ben20 21.07.2003 16:34:59

PHP-Code:

// Feststellen ob Zahl mit Punkt endet - Falls ja Punkt entfernen, falls Nein prüfen / entfernen von Nullen
if(substr($zahl, -1) == '.') {

$zahl substr($zahl0strlen($zahl 1));


}
else {


while(
substr($zahl, -1) == '0') {

// Letze Null killen
$zahl substr($zahl0strlen($zahl 1));

// Prüfen ob letztes Zeichen ein Punkt. Falls ja - entfernen und Schleife beenden - falls nein - weiter auf Nullen prüfen!
if(substr($zahl, -1) == '.') {

$zahl substr($zahl0strlen($zahl 1));
break;


}

}



Habs nicht getestet, aber so könnte es gehen - geht wahrscheinlich noch einfacher, aber immerhin!

OlliT 21.07.2003 16:51:14

Hi Ben,

funktioniert so halbwegs *g* aber bei einer zahl = 100.000 bleibt nur eine 1 übrig aber es sollte ja 100 stehen beleiben, was muss ich noch ändern?

Ben20 21.07.2003 21:56:57

Das ganze sollte eigentlich hier:

Code:

if(substr($zahl, -1) == '.') {


$zahl = substr($zahl, 0, strlen($zahl - 1));

break;


}

schon abgefangen werden! Ich vermute mal da passt was mit der if Abfrage nicht - schreib da mal ein echo "Hallo" oder sowas rein, damit du siehst ob das Script da irgendwann mal reinfällt, wenn dem so ist, dann mach er den break; nicht richtig - ansonsten stimmt die Bedingung nicht!


Alle Zeitangaben in WEZ +2. Es ist jetzt 20:21:49 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.