phpbar.de logo

Mailinglisten-Archive

[php] serialize & float

[php] serialize & float

Thomas Richter php at wwedit.org
Mit Jan 7 22:10:54 CET 2004


> Hat jemand eine Idee, Workaround ? Wie handhabt ihr Fließkommazahlen? Ich
> könnte auch alles auf Pfennige runterrechnen, da habe ich keine Kommastellen
> mehr...oder ich arbeite nur mit englischem locale und setze es nur für die
> Ausgabe um??

ich denke mal die locale hat einzig und alleine einfluss darauf, wie 
deine zahl ausgegeben wird (echo, print, sprint etc) nicht, wie du damit 
arbeiten kannst...

also einfach auf cent runter rechnen...

tip:

fuer die programmierung brauchst du nicht extra nun deinen ganzen shop 
umschreiben...

es gibt 2 magix method fuer klassen, wenn diese serialisiert werden...

__sleep()
__wakeup()

__sleep() wird von serialize() VOR der serialisierung aufgerufen. damit 
kannst du in deinem warenkorb objekt 'aufraeumen', bzw. alle preise in 
cent umrechnen. wichtig ist, dass du ein array zuruecklieferst, in dem 
die namen aller attribute stehen hast, die serialisiert werden sollen:

z.bsp.: return array_keys(get_object_vars($this));

__wakeup() macht dann genau das gegenteil... also muesste da nur der 
code rein, der ausgefuehrt werden soll, wenn dein objekt unserialized 
wird... (also wieder in euro umrechnen...)


hoffe das ist hilfreich.


thomas



php::bar PHP Wiki   -   Listenarchive