phpbar.de logo

Mailinglisten-Archive

[php] number_format

[php] number_format

Friedhelm Betz holliwell at gmx.net
Mon Jun 14 16:10:58 CEST 2004


Hallo,

>
> ist schon jemand die neue Verarbeitung von number_format aufgefallen?

Ja.

> Bislang war es so, daß beim Aufruf von numer_format mit leeren Dezimal- und
> Tausender-Trenner automatisch der Punkt als Dezimal-Trenner verwendet
> wurde. Seit der 4.3.7 ist es nun so, daß der gleiche Aufruf (mit leeren
> Trennern) nicht mehr den Punkt als Standard-Dezimal-Trenner einsetzt
> sondern garkeinen.
>
> Rein logisch betrachtet ist die neue Version ja auch korrekt, denn ich habe
> dort ja keinen Trenner angegeben, also bekomme ich auch keinen.
>
> Was ich allerding ziemlich daneben finde ist die Tatsache, daß PHP nun
> schon seit der Einführung des Befehls number_format diese oben beschriebene
> Ersetzung des leeren Trenners vornimmt und es nun einfach mal eben geändert
> wurde und sämtliche Scripte die wie oben angegeben programmiert wurden nun
> nicht mehr funktionieren. Das ist besonders ärgerlich, wenn es um
> Geldbeträge geht, die nun nicht mehr stimmen.

Bevor man eine neue PHP-Version einsetzt, sollte man 
http://de.php.net/ChangeLog-4.php zumindest überfliegen ;-)
Bei number_format wurde ein Fehlverhalten korrigiert, das ist der Sinn einer 
Bugfix-Release.

> Bislang war ich sehr begeistert von PHP. Allerdings habe ich nun kein
> Vertrauen mehr in diese Scriptsprache, denn solche Geschichten wie oben
> beschrieben dürfen einfach nicht passieren. Oder wie soll man seinem Kunden
> erklären, daß plötzlich statt 50.00EUR 5000EUR auf den Rechnungen stehen?
> Und wie soll der Kunde das wiederum seinen Kunden erklären?
> Meines Erachtens kann man nicht einfach solche Regelungen umschmeißen, auch
> wenn es vielleicht vorher unlogisch war.
> Wenn ich mich nicht darauf verlassen kann, daß eine Funktion auch in einer
> der nächsten Versionen noch genauso funktioniert dann kann ich leider PHP
> in Zukunft nicht mehr bei wichtige(re)n Projekten verwenden.

Wenn es sich um Bugs handelt, werden diese behoben und das ist auch gut so. 
Waerst Du zufrieden, dass ein einmal vorkommender Bug nie behoben wird, nur 
weil Skripte existieren, die diesen Bug 'ausnutzen'?
Im uebrigen duerfte es doch nicht unbedingt so schwerffallen, die eigenen 
Applikationen anzupassen und number_format fuer php4.3.7 korrekt zu benutzen.
Search und Replace und gut ist;-) Und es funktioniert auch mit Versionen 
kleiner als 4.3.7.


> Vielleicht fällt jetzt irgendjemandem auf, daß es unlogisch ist wenn mktime
> eine andere Anordnung der Parameter hat als die anderen Zeitbefehle und es
> wird dann auch mal kurzerhand angepasst... dann ist das Chaos perfekt....

Warum sollte das passieren? Solange es diesbezueglich keinen Bug/Notwendigkeit 
gibt das zu tun, geht die Wahrscheinlichkeit fuer so etwas gegen 0.

> Was haltet ihr davon bzw. ist es überhaupt schon jemandem aufgefallen?

s.o. Bugs sind dazu da, behoben zu werden ;-) und das mit number_format ist 
imho nicht wild.

> Meiner Meinung nach ein ganz dickes Minus für PHP - leider, denn ich bin
> ansonsten wirklich begeister von dieser Scriptsprache und nutze kaum noch
> was anderes.... nun werd ich aber wirklich skeptisch...

Mit Minus meinst Du bug-fixing? Klar ist das nicht immer ganz durchsichtig, 
aber i.A. wird versucht und wird großer Wert auf BC gelegt.
Ich kann das nicht als Minus werten, aber da kann und soll sich jeder seine 
eigene Meinung zu bilden;-)

Was waere denn fuer dich die Alternative zur Korrektur von number_format 
gewesen? Immerhin steht es im changelog, gibt den Leuten die Chance es zu 
wissen.....

Gruesse
Friedhelm

php::bar PHP Wiki   -   Listenarchive