we hebben hier op mijn stage laatst de webserver naar een andere distro verhuist, dit omdat de vorige server (Rethat 8 NL) niet al te best liep,we zijn dus nu naar een Slackware server verhuist (Slackware 9.1 EN).
nu heeft de webdeveloper hier veel gebruik heeft gemaakt van de functie
number_format()
het probleem is dat deze gebruik maakt van de lokale valuta/getal weergave, waardoor de afronding dus niet goed gaat
zoals je ziet verwacht php dus een punt als decimaal teken, het probleem is dat de bron de gegevens met een , aanbied en dit ook niet te veranderen is.
oke .. geen probleem .. dan gebruiken we toch gewoon de functie
het probleem is echter dat na het gebruik van deze functie nog steeds het decimaal teken op een . staat
terwijl als ik in
/usr/share/i18n/locales/nl_NL kijk ik hier prima zie staan :
zie ik hier nu wat over het hoofd of is PHP gewoon aan het fucken
nu heeft de webdeveloper hier veel gebruik heeft gemaakt van de functie
number_format()
het probleem is dat deze gebruik maakt van de lokale valuta/getal weergave, waardoor de afronding dus niet goed gaat
PHP:
1
2
3
4
5
6
7
8
9
| // gaat niet goed $baka = "12,34"; echo number_format($baka, 1, ',', ''); // uitkomst 12.0 // gaat goed $baka = "12.34"; echo number_format($baka, 1, ',', ''); // uitkomst 12.3 |
zoals je ziet verwacht php dus een punt als decimaal teken, het probleem is dat de bron de gegevens met een , aanbied en dit ook niet te veranderen is.
oke .. geen probleem .. dan gebruiken we toch gewoon de functie
PHP:
1
| setlocale(LC_ALL, "nl_NL"); |
het probleem is echter dat na het gebruik van deze functie nog steeds het decimaal teken op een . staat
code:
1
2
3
4
5
6
7
8
9
10
11
| Array ( [decimal_point] => . [thousands_sep] => [int_curr_symbol] => EUR [currency_symbol] => EUR [mon_decimal_point] => , [mon_thousands_sep] => . [positive_sign] => *knip* ) |
terwijl als ik in
/usr/share/i18n/locales/nl_NL kijk ik hier prima zie staan :
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| LC_MONETARY int_curr_symbol "<U0045><U0055><U0052><U0020>" currency_symbol "<U20AC>" decimal_point "," mon_decimal_point "," mon_thousands_sep "." *knip* END LC_MONETARY LC_NUMERIC decimal_point "," thousands_sep "" grouping 0;0 END LC_NUMERIC |
zie ik hier nu wat over het hoofd of is PHP gewoon aan het fucken