web-dev-qa-db-de.com

Wie formatiere ich eine Zahl in einem Dollarbetrag in PHP

Wie konvertiert man eine Zahl in eine Zeichenfolge, die Dollar und Cent angibt?

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

PHP hat auch money_format () .

Hier ist ein Beispiel:

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

Diese Funktion hat viele Möglichkeiten. Sehen Sie sich die Dokumentation an, die ich verlinkt habe.

Hinweis: money_format ist in Windows nicht definiert.

67
Jeremy Ruten

Wenn Sie nur etwas einfaches wollen:

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

Zahlenformat()

69
Darryl Hein

ich versuchte money_format(), aber es funktionierte bei mir überhaupt nicht. dann habe ich den folgenden probiert. es hat perfekt für mich funktioniert. hoffentlich wird es auch für dich funktionieren .. :)

du solltest diesen benutzen 

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

es zeigt die Geldzahl in Form des Geldformats bis zu 2 Dezimalstellen an.

11
saadk

In PHP und C++ können Sie die Funktion printf () verwenden

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

In php.ini fügen Sie Folgendes hinzu (falls es fehlt):

#windows
extension=php_intl.dll

#linux
extension=php_intl.so

Dann mach das:

$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