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";
?>