NumberFormatter::parseCurrency
numfmt_parse_currency
(PHP 5 >= 5.3.0, PHP 7, PECL intl >= 1.0.0)
NumberFormatter::parseCurrency -- numfmt_parse_currency — 通貨をパースする
説明
オブジェクト指向型
public
NumberFormatter::parseCurrency
( string $value
, string &$currency
[, int &$position
] ) : float
手続き型
numfmt_parse_currency
( NumberFormatter $fmt
, string $value
, string &$currency
[, int &$position
] ) : float
現在のフォーマッタを使用して、文字列を数値と通貨にパースします。
パラメータ
fmt
- NumberFormatter オブジェクト。
currency
- 通貨名 (3 文字の ISO 4217 通貨コード) を受け取るパラメータ。
position
- 文字列中でパースを開始する位置のオフセット。 結果を返す際に、この値はパース終了時のオフセットを保持します。
返り値
パースした数値、あるいはエラー時に false
を返します。
例
例1 numfmt_parse_currency() の例
<?php$fmt = numfmt_create( 'de_DE', NumberFormatter::CURRENCY );$num = "1.234.567,89\xc2\xa0$";echo "We have ".numfmt_parse_currency($fmt, $num, $curr)." in $curr\n";?>
例2 オブジェクト指向の例
<?php$fmt = new NumberFormatter( 'de_DE', NumberFormatter::CURRENCY );$num = "1.234.567,89\xc2\xa0$";echo "We have ".$fmt->parseCurrency($num, $curr)." in $curr\n";?>
上の例の出力は以下となります。
We have 1234567.89 in USD
参考
- numfmt_get_error_code() - フォーマッタの直近のエラーコードを取得する
- numfmt_parse() - 数値をパースする
- numfmt_format_currency() - 通貨の値をフォーマットする