ce qui me paraît fort peu joli. N'y a-t-il pas mieux ? Merci.
Si ta page est en ISO-8859-1 (ou ISO-8859-X quel que soit X), tu peux tout simplement mettre une espace insécable directement à la place de l'espace simple. Si ton éditeur ne te permet pas d'écrire une espace insécable, ceci peut faire l'affaire : $nb = number_format($nb, 2, ',', "xa0");
Mais si tu es en utf-8, comme seul le premier caractère de thousands_sep est utilisé, tu ne peux faire la conversion qu'après le number_format : $nb = utf8_encode(number_format($nb, 2, ',', "xa0"));
Note que c'est d'ailleurs équivalent à : preg_replace("xa0", "xc2xa0", number_format($nb, 2, ',', "xa0")); (et du coup je me demande si tu gagnes beaucoup à faire comme ça).
pour passer d'un nombre comme 1234567890.00 à 1 234 567 890,99 , je fais :
ce qui me paraît fort peu joli. N'y a-t-il pas mieux ? Merci.
Si ta page est en ISO-8859-1 (ou ISO-8859-X quel que soit X), tu peux
tout simplement mettre une espace insécable directement à la place de
l'espace simple. Si ton éditeur ne te permet pas d'écrire une espace
insécable, ceci peut faire l'affaire :
$nb = number_format($nb, 2, ',', "xa0");
Mais si tu es en utf-8, comme seul le premier caractère de thousands_sep
est utilisé, tu ne peux faire la conversion qu'après le number_format :
$nb = utf8_encode(number_format($nb, 2, ',', "xa0"));
Note que c'est d'ailleurs équivalent à :
preg_replace("xa0", "xc2xa0", number_format($nb, 2, ',', "xa0"));
(et du coup je me demande si tu gagnes beaucoup à faire comme ça).
ce qui me paraît fort peu joli. N'y a-t-il pas mieux ? Merci.
Si ta page est en ISO-8859-1 (ou ISO-8859-X quel que soit X), tu peux tout simplement mettre une espace insécable directement à la place de l'espace simple. Si ton éditeur ne te permet pas d'écrire une espace insécable, ceci peut faire l'affaire : $nb = number_format($nb, 2, ',', "xa0");
Mais si tu es en utf-8, comme seul le premier caractère de thousands_sep est utilisé, tu ne peux faire la conversion qu'après le number_format : $nb = utf8_encode(number_format($nb, 2, ',', "xa0"));
Note que c'est d'ailleurs équivalent à : preg_replace("xa0", "xc2xa0", number_format($nb, 2, ',', "xa0")); (et du coup je me demande si tu gagnes beaucoup à faire comme ça).