Fonctions et opérateurs pratiques
<<<
Conversion de type Les types
>>>

4.2.5 Les chaînes de caractères
4.2 Les types
4 Référence
 Manuel PHP

Syntax
Fonctions et opérateurs pratiques
->Conversion de type

4.2.5.3 Conversion de type

Lorsqu'une chaîne de caractère est évaluée comme une valeur numérique, le résultat et le type de la variable sont déterminés comme suit.

La chaîne de caractères est de type "double" si elle contient un des caractère '.', 'e' ou 'E'. Sinon, elle est de type entier ("integer").

La valeur est définie par la première partie de la chaîne. Si la chaîne de caractères débute par une valeur numérique cette valeur sera celle utilisée. Sinon, la valeur sera égale à 0 (zéro).

Lorsque la première expression est une chaîne de caractères, le type de la variable dépend de la seconde expression.


<?php
  $foo
= 1 + "10.5";              // $foo est du type  float (11.5)
  
$foo = 1 + "-1.3e3";            // $foo est du type  float (-1299)
  
$foo = 1 + "bob-1.3e3";         // $foo est du type  integer (1)
  
$foo = 1 + "bob3";              // $foo est du type  integer (1)
  
$foo = 1 + "10 Small Pigs";     // $foo est du type  integer (11)
  
$foo = 1 + "10 Little Piggies"; // $foo est du type  integer (11)
  
$foo = "10.0 pigs " + 1;        // $foo est du type  integer (11)
  
$foo = "10.0 pigs " + 1.0;      // $foo est du type  float (11)
?>

Pour plus d'informations sur les conversions de type, voir les pages de man à propos de la fonction strtod(3).

Si vous voulez testez l'un des exemples de cette section, vous pouvez faire un copier/coller et l'insérer dans un script pour voir comment il se comporte.

<?php
  
echo "\$foo==$foo; type is " . gettype( $foo ) . "<br>\n";
?>

<< Conversion de type >>
Fonctions et opérateurs pratiques Les chaînes de caractères Les types