Les types
<<<
Transtypage Les types
>>>

4.2.10 Définition du type
4.2 Les types
4 Référence
 Manuel PHP

->Transtypage

4.2.10.1 Transtypage

La conversion de type en PHP fonctionne de la même manière qu'en C: le nom du type désiré est écrit entre parenthèses devant la variable à transtyper ("cast").

<?php
  $foo
= 10;   // $foo est un entier
  
$bar = (double) $foo;   // $bar est un double
?>

Les conversions autorisées sont:

  • (int), (integer) - type entier
  • (bool), (boolean) - booléen
  • (real), (double), (float) - type double
  • (string) - ctype chaîne
  • (array) - type tableau
  • (object) - type objet

Il est à noter que les tabulations et les espaces sont autorisés à l'intérieur des parenthèses, donc les lignes suivantes sont équivalentes:

<?php
  $foo
= (int) $bar;
  
$foo = ( int ) $bar;
?>

Le transtypage n'a pas toujours de résultat prévisible. Pour plus d'informations, voyez :

Attention

Pour transformer facilement une variable en chaîne, entourez la simplement de guillements doubles.

Lors de la conversion d'un tableau en chaîne, le résultat sera le mot Array (tableau, en anglais). Lors de la conversion d'un objet en chaîne, le résultat sera le mot Object (objet, en anglais). Dans les deux cas, une alerte sera affichée.

Lorsque vous transtypez un scalaire ou une chaîne en tableau, la variable verra son contenu affecté au premier élément du tableau.

<?php
  $var
= 'ciao';
  
$arr = (array) $var;
  echo
$arr[0];  // affiche 'ciao'
?>

Lorsque vous transtypez un scalaire ou une chaîne en objet, la valeur de la variable sera transformée en attribut de l'objet. L'attribut s'appellera 'scalar':

<?php
  $var
= 'ciao';
  
$obj = (object) $var;
  echo
$obj->scalar;  // affiche 'ciao'
?>

<< Transtypage >>
Les types Définition du type Les types