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!