Money_Format ist eine integrierte Formatierungsfunktion in PHP, mit der Währungszeichenfolgen gemäß Gebietsschema formatiert werden. Seine Syntax ist wie folgt:
<Code> String Money_Format (String $ Format, float $ number) </code>$ format ist eine Formatzeichenfolge, die das Ausgabeformat definiert.
$ nummer ist die Nummer, die formatiert werden muss.
Es ist zu beachten, dass die Funktion Money_Format vom Gebietsschema des Systems abhängt. Wenn das Gebietsschema nicht korrekt eingestellt ist, wird das Währungssymbol oder das Format möglicherweise nicht korrekt angezeigt.
Vor dem Aufrufen von Money_Format müssen Sie die SetLocale -Funktion verwenden, um die entsprechende Flächenumgebung festzulegen. Zum Beispiel in das englische Umfeld der Vereinigten Staaten eingestellt:
<Code> setLocale (lc_monetary, 'en_us.utf-8'); </code>Wenn Ihr System dieses Gebietsschema nicht unterstützt, muss es gemäß der Serverumgebung angepasst werden.
Die Format -Zeichenfolge von Money_Format beginnt mit % und kann danach mehrere Modifikatoren haben:
%I : Internationales Währungsformat (einschließlich Währungscode wie USD)
%N : Lokales Währungsformat (einschließlich Währungssymbole)
Nehmen wir an, wir haben einen Betrag von 1234,5 und möchten Geld verwenden, um das Format mit Dollarschildern, Milliten und die beiden Dezimalstellen aufzubewahren.
<code> <? php // Setzen Sie die regionale Umgebung auf amerikanische englische SetLocale (LC_MONETARY, 'EN_US.UTF-8');$ betragen = 1234,5;
// Verwenden Sie das %N -Format, um das lokale Währungsformat auszugeben, und behalten Sie standardmäßig zwei Dezimalstellen bei
$ formated = meyn_format ('%n', $ betragen);
echo $ formatiert;
?>
</code>
Das Ausgangsergebnis ist normalerweise:
<code> $ 1,234.50 </code>Die Money_Format -Funktion gilt nur für Linux/UNIX -Systeme und wird in der Windows -Umgebung nicht unterstützt.
Nach PHP 7.4 wird offiziell empfohlen, die NumberFormatter -Klasse anstelle von Money_Format zu verwenden, da letztere als verlassen markiert wurde.
Wenn Sie plattformübergreifend und mit neuen PHP-Versionen kompatibel sind, wird empfohlen, NumberFormatter zu verwenden.
Implementieren Sie dieselbe Funktionalität mit NumberFormatter :
<Code> <? php $ betragen = 1234,5; $ formatter = new numberFormatter ('en_us', numberFormatter :: currency); echo $ formatcurrency ($ betragen, 'USD'); ?> </code>Die Ausgabe ist gleich:
<code> $ 1,234.50 </code>Obwohl Money_Format in vielen alten Projekten immer noch verwendet wird, wird empfohlen, die NumberFormatter -Klasse zu verwenden, um die Währung für Kompatibilität und zukünftige Wartungsüberlegungen zu formatieren. Dieser Artikel zeigt, wie man die Ausgabe von Money_Format verwendet, um das Standard -Währungsformat von zwei Dezimalstellen beizubehalten, und bietet eine moderne Alternative, mit der Entwickler flexible Entscheidungen auf der Grundlage ihrer Anforderungen treffen können.