Analyse un nombre

# NumberFormatter::parse

# numfmt_parse

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

NumberFormatter::parse -- numfmt_parse — Analyse un nombre

### Description

Style orienté objet

public function NumberFormatter::parse(string `$string`, int `$type` = `NumberFormatter::TYPE_DOUBLE`, int `&$offset` = `null`): int|float|false

Style procédural

function numfmt_parse(
NumberFormatter `$formatter`,
string `$string`,
int `$type` = `NumberFormatter::TYPE_DOUBLE`,
int `&$offset` = `null`
): int|float|false

Analyse une chaîne et extrait un nombre, à l'aide des règles du formateur.

### Liste de paramètres

`formatter`

  L'objet NumberFormatter.

`string`

  La chaîne à analyser pour le nombre.

`type`

  Le type de format à utiliser. Par défaut, `NumberFormatter::TYPE_DOUBLE` est utilisé. Il est à noter que `NumberFormatter::TYPE_CURRENCY` n'est pas pris en charge ; utiliser NumberFormatter::parseCurrency() à la place.

`offset`

  La position de début d'analyse dans la chaîne. En retour, cette valeur contiendra la position de fin d'analyse.

### Valeurs de retour

La valeur de nombre analysé, ou `false` en cas d'erreur.

### Exemples

Exemple #1 Exemple avec numfmt_parse(), Style procédural

    <?php
    $fmt = numfmt_create( 'de_DE', NumberFormatter::DECIMAL );
    $num = "1.234.567,891";
    echo numfmt_parse($fmt, $num)."\n";
    echo numfmt_parse($fmt, $num, NumberFormatter::TYPE_INT32)."\n";
    ?>

Exemple #2 Exemple avec numfmt_parse(), style POO

    <?php
    $fmt = new NumberFormatter( 'de_DE', NumberFormatter::DECIMAL );
    $num = "1.234.567,891";
    echo $fmt->parse($num)."\n";
    echo $fmt->parse($num, NumberFormatter::TYPE_INT32)."\n";
    ?>

L'exemple ci-dessus va afficher :

    1234567.891
    1234567

### Voir aussi

- numfmt_get_error_code() - Lit le dernier code d'erreur du formateur
- numfmt_format() - Formate un nombre
- numfmt_parse_currency() - Analyse un nombre monétaire

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