查询

NumberFormatter::parseCurrency()函数—用法及示例

「 解析带有货币符号的字符串,并返回其数值 」


函数名称:NumberFormatter::parseCurrency()

适用版本:PHP 5 >= 5.3.0, PHP 7, PHP 8

函数描述:NumberFormatter::parseCurrency() 函数用于解析带有货币符号的字符串,并返回其数值。

语法:public static mixed NumberFormatter::parseCurrency ( string $value [, string &$currency [, int &$position ]] )

参数:

  • value:要解析的带有货币符号的字符串。
  • currency(可选):一个变量,用于存储解析出的货币代码。
  • position(可选):一个变量,用于存储解析结束的位置。

返回值:

  • 解析成功时,返回解析出的数值。
  • 解析失败时,返回 false。

示例:

$formatter = new NumberFormatter('en_US', NumberFormatter::CURRENCY);

$value = "$1,234.56";
$currency = '';

$result = $formatter->parseCurrency($value, $currency);

if ($result !== false) {
    echo "解析成功\n";
    echo "数值: " . $result . "\n";
    echo "货币代码: " . $currency . "\n";
} else {
    echo "解析失败\n";
}

输出:

解析成功
数值: 1234.56
货币代码: USD

在上面的示例中,我们首先创建了一个 NumberFormatter 对象,并设置其格式为 "en_US" 和 NumberFormatter::CURRENCY,以表示使用美元货币格式。

然后,我们定义了一个带有货币符号的字符串 "$1,234.56"。我们调用 NumberFormatter::parseCurrency() 函数来解析该字符串,并将解析结果存储在 $result 变量中。同时,我们传递了一个空的变量 $currency,用于存储解析出的货币代码。

如果解析成功(即返回的结果不为 false),则输出解析成功的消息,并打印解析出的数值和货币代码。在这个例子中,解析结果为 1234.56,货币代码为 USD。

如果解析失败,则输出解析失败的消息。

请注意,函数的第二个参数 $currency 和第三个参数 $position 都是可选的。如果不需要获取解析出的货币代码和解析结束的位置,可以省略这两个参数。

希望以上信息能对你有所帮助!如果有任何疑问,请随时提问。

补充纠错
热门PHP函数
分享链接