PHP money_format() funktion

Exempel

en_US internationell format:

<?php
$number = 1234.56;
setlocale(LC_MONETARY,"en_US");
echo money_format("Priset är %i", $number);
?>

以上代码的输出:

Priset är USD 1,234.56

Definition och användning

money_format() funktionen returnerar en sträng som har formaterats som en valutasträng.

Denna funktion infogar ett formaterat nummer på procenttecknet (%) i huvudsträngen.

注释:money_format() funktionen fungerar inte på Windows-plattformen.

Tips:Denna funktion används ofta tillsammans med setlocale() Funktioner tillsammans.

Tips:För att se alla tillgängliga språkkoder, besök vårSpråkkod referenshandbok

Syntaks

money_format(string,number)
Parameter Beskrivning
string

Obligatorisk. Angiv den sträng som ska formateras och hur variablerna i den ska formateras.

Möjliga formatvärden:

Fyllnad och tecken:

  • =f - Använd tecken (f) som fyllnad (t.ex. %=t använder "t" som fyllnad). Standard är att använda mellanslag som fyllnad.
  • ^ - Ta bort användningen av grupperingskaraktärer.
  • + eller ( - Angiv hur positivt och negativt tal ska visas. Om "+" används, kommer lokala inställningar för + och - att användas (vanligtvis ett tecken innan negativa tal, inget tecken innan positiva tal). Om "(" används, kommer negativa tal att vara inom parenteser. Standard är att använda "+".
  • ! - Stoppa användningen av valutatecken i utdatasträngen.
  • - Om "-" används, kommer alla fält att vara vänsterjusterade. Standard är högerjusterad.

Fältbredd:

  • x - Angiv den minsta bredden för fältet (x). Standard är 0.
  • #x - Angiv det maximala antalet siffror till vänster om decimaltecknet (x). Används för att hålla formateringen i samma kolumn centrerad. Om antalet siffror är större än x, kommer denna regel att ignoreras.
  • .x - 规定小数点右边数字的最大位数(x)。如果 x 是 0,小数点及其右边的数字将不会显示。默认使用本地设置。

转换字符:

  • i - 数字被格式化为国际货币格式。
  • n - 数字被格式化为国家货币格式。
  • % - 返回 % 字符。

注释:如果使用多个格式值,则它们必须以上面的顺序出现。

注释:该函数受本地设置的影响。

number 必需。被插入到格式化字符串中 % 符号位置的数字。

技术细节

返回值:

返回已格式化的字符串。

格式化字符串前后的字符将保持不变返回。非数值数字会返回 NULL 并产生 E_WARNING。

PHP 版本: 4.3.0+

更多实例

例子 1

带 2 个小数的国际格式(德国):

<?php
$number = 1234.56;
setlocale(LC_MONETARY,"de_DE");
echo money_format("%.2n", $number);
?>

以上代码的输出:

1 234,56 EUR

例子 2

负数,带有 () 指示负数的 US 国际格式,右侧精度为 2,并且 "*" 为填充字符:

<?php
$number = -1234.5672;
echo money_format("%=*(#10.2n",$number);
?>

以上代码的输出:

(******1234.57)