Retourne la valeur numérique entière équivalente d'une variable

# intval

(PHP 4, PHP 5, PHP 7, PHP 8)

intval — Retourne la valeur numérique entière équivalente d'une variable

### Description

function intval(mixed `$value`, int `$base` = 10): int

Retourne la valeur entier de `value` en utilisant la `base` fournie pour la conversion (par défaut en base 10). intval() ne devrait pas être utilisée sur des objets, dans ces cas, une erreur de niveau `E_WARNING` sera émise et la fonction retournera 1.

### Liste de paramètres

`value`

  La valeur scalaire à être convertie en entier

`base`

  La base pour la conversion

  > Note:

  > Si `base` vaut 0, la base utilisée est déterminée par le format du paramètre `value` :

  > - si la chaîne inclut un préfixe "0x" (ou "0X"), la base prise sera 16 (hex) ; sinon,
  > - si la chaîne commence par "0b" (ou "0B"), la base prise sera 2 (binaire); sinon,
  > - si la chaîne commence par "0", la base prise sera 8 (octal); sinon,
  > - la base prise sera 10 (décimal).

### Valeurs de retour

Une valeur de type entier de `value` en cas de succès ou 0 en cas d'échec. Les tableaux vides retournent 0, les tableaux non vides retournent 1.

La valeur maximale dépend du système. Les systèmes à 32 bits ont une valeur entière signée maximale de -2147483648 à 2147483647. Alors, par exemple, sur un système semblable, `intval('1000000000000')` retournera 2147483647. La valeur entière signée maximale pour un système à 64 bits est 9223372036854775807.

Les chaînes de caractères retournent la plupart du temps 0, cela dépend des caractères à l'extrême gauche de la chaîne. La règle courante du transtypage d'entier s'applique.

> Note: Les chaînes numériques utilisant la notation scientifique (contenant la lettre `e` ou `E`) sont d'abord analysées comme des nombres avant d'être converties en entier. Étant donné que la partie numérique de la chaîne est analysée dans son ensemble, le résultat n'est pas simplement la partie entière de tête. Les exposants importants peuvent en outre déborder jusqu'à `PHP_INT_MAX` :

>     <?php
>     echo intval('42.42e42'); // 9223372036854775807 sur les systèmes 64 bits
>     ?>

> Voir Chaînes numériques pour des détails sur l'interprétation de ce type de chaînes.

### Historique

Version | Description
--- | ---
8.0.0 | Le niveau d'erreur lors de la conversion à partir d'un objet a été modifié de `E_NOTICE` à `E_WARNING`.

### Exemples

Exemple #1 Exemples avec intval()

Les exemples suivants sont basés sur un système à 64 bits.

    <?php
    echo intval(42), PHP_EOL;                      // 42
    echo intval(4.7), PHP_EOL;                     // 4
    echo intval('42'), PHP_EOL;                    // 42
    echo intval('+42'), PHP_EOL;                   // 42
    echo intval('-42'), PHP_EOL;                   // -42
    echo intval(042), PHP_EOL;                     // 34
    echo intval('042'), PHP_EOL;                   // 42
    echo intval(1e10), PHP_EOL;                    // 10000000000
    echo intval('1e10'), PHP_EOL;                  // 10000000000
    echo intval(0x1A), PHP_EOL;                    // 26
    echo intval('0x1A'), PHP_EOL;                  // 0
    echo intval('0x1A', 0), PHP_EOL;               // 26
    echo intval(42000000), PHP_EOL;                // 42000000
    echo intval(420000000000000000000), PHP_EOL;   // -4275113695319687168
    echo intval('420000000000000000000'), PHP_EOL; // 9223372036854775807
    echo intval(42, 8), PHP_EOL;                   // 42
    echo intval('42', 8), PHP_EOL;                 // 34
    echo intval(array()), PHP_EOL;                 // 0
    echo intval(array('foo', 'bar')), PHP_EOL;     // 1
    echo intval(false), PHP_EOL;                   // 0
    echo intval(true), PHP_EOL;                    // 1
    ?>

### Notes

> Note:

> Le paramètre `base` n'a aucun effet à moins que le paramètre `value` soit une chaîne de caractères.

### Voir aussi

- boolval() - Récupère la valeur booléenne d'une variable
- floatval() - Convertit une chaîne en nombre à virgule flottante
- strval() - Récupère la valeur d'une variable, au format chaîne
- settype() - Affecte un type à une variable
- is_numeric() - Détermine si une variable est un nombre ou une chaîne numérique
- Transtypage
- Nombres de grande taille BCMath

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