web-dev-qa-db-ja.com

PHPで数値をドル額にフォーマットするにはどうすればよいですか

どのように数値をドルとセントを示す文字列に変換しますか?

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

PHPには money_format() もあります。

次に例を示します。

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

この関数には実際には多数のオプションがあります。リンクするには、リンク先のドキュメントを参照してください。

注:money_formatはWindowsでは未定義です。

75
Jeremy Ruten

単純なものが必要な場合:

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

number_format()

73
Darryl Hein

money_format()を試してみましたが、まったく機能しませんでした。その後、私は次のものを試しました。それは私にとって完璧に働いた。うまくいけば、あなたにとっても正しい方法で動作します.. :)

あなたはこれを使うべきです

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

小数点以下2桁までの金額形式で金額が表示されます。

13
saadk

PHPおよびC++では、printf()関数を使用できます

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

Php.iniでこれを追加します(見つからない場合):

#windows
extension=php_intl.dll

#linux
extension=php_intl.so

次にこれを行います:

$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);
1
Frank Forte