通貨をパースする

# NumberFormatter::parseCurrency

# numfmt_parse_currency

(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)

NumberFormatter::parseCurrency -- numfmt_parse_currency — 通貨をパースする

### 説明

オブジェクト指向型

public function NumberFormatter::parseCurrency(string `$string`, string `&$currency`, int `&$offset` = `null`): float|false

手続き型

function numfmt_parse_currency(
NumberFormatter `$formatter`,
string `$string`,
string `&$currency`,
int `&$offset` = `null`
): float|false

現在のフォーマッタを使用して、文字列を浮動小数点と通貨にパースします。

### パラメータ

`formatter`

  NumberFormatter オブジェクト。

`currency`

  通貨名 (3 文字の ISO 4217 通貨コード) を受け取るパラメータ。

`offset`

  文字列中でパースを開始する位置のオフセット。 結果を返す際に、この値はパース終了時のオフセットを保持します。

### 戻り値

パースした数値、あるいはエラー時に `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() - 通貨の値をフォーマットする

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open