php - Wrong format using NumberFormatter::formatCurrency with es_ES locale -
i'm working on currency display website using numberformatter::formatcurrency.
i did quick dirty test see if fine, this:
$nf = new \numberformatter('es_es', \numberformatter::currency); var_dump($nf->formatcurrency(3000.05, 'eur')); $nf = new \numberformatter('de_de', \numberformatter::currency); var_dump($nf->formatcurrency(3000.05, 'eur')); $nf = new \numberformatter('en_us', \numberformatter::currency); var_dump($nf->formatcurrency(3000.05, 'eur')); $nf = new \numberformatter('en_gb', \numberformatter::currency); var_dump($nf->formatcurrency(3000.05, 'eur')); $nf = new \numberformatter('fr_fr', \numberformatter::currency); var_dump($nf->formatcurrency(3000.05, 'eur')); and result
string(14) "3 000,05 €" string(13) "3.000,05 €" string(11) "€3,000.05" string(11) "€3,000.05" string(14) "3 000,05 €" so looks fine except es_es locale, because in spain use same format in germany: x.xxx,xx €
if run command locale -a on machine get
c c.utf-8 en_gb.utf8 en_us.utf8 es_es.utf8 posix so, where's problem? locale definitions wrong on es_es case?
Comments
Post a Comment