web-dev-qa-db-fra.com

Comment formater un nombre en un montant en dollars PHP

Comment convertir un nombre en chaîne contenant des dollars et des cents?

eg:
123.45    => '$123.45'
123.456   => '$123.46'
123       => '$123.00'
.13       => '$0.13'
.1        => '$0.10'
0         => '$0.00'
51
nickf

PHP a aussi money_format () .

Voici un exemple:

echo money_format('$%i', 3.4); // echos '$3.40'

Cette fonction a en fait des tonnes d’options, consultez la documentation à laquelle je me suis connecté pour les voir.

Remarque: money_format n'est pas défini dans Windows.

67
Jeremy Ruten

Si vous voulez juste quelque chose de simple:

'$' . number_format($money, 2);

Format de nombre()

69
Darryl Hein

j'ai essayé money_format() mais cela n'a pas fonctionné du tout pour moi. alors j'ai essayé le suivant. cela a fonctionné parfaitement pour moi. j'espère que cela fonctionnera de la bonne manière pour vous aussi .. :)

vous devriez utiliser celui-ci 

number_format($money, 2,'.', ',')

il affichera le nombre d'argent en termes de format monétaire jusqu'à 2 décimales.

11
saadk

Dans PHP et C++, vous pouvez utiliser la fonction printf ()

printf("$%01.2f", $money);
6
nickf

Dans php.ini, ajoutez ceci (s'il est manquant):

#windows
extension=php_intl.dll

#linux
extension=php_intl.so

Alors fais ceci:

$amount = 123.456;

// for Canadian Dollars
$currency = 'CAD';

// for Canadian English
$locale = 'en_CA';

$fmt = new \NumberFormatter( $locale, \NumberFormatter::CURRENCY );
echo $fmt->formatCurrency($amount, $currency);
0
Frank Forte