| Précédent | Suivant |
Le type de données d’une variable peut être modifié à l’aide des "transtypages" (int), (double), (string) , … .
Les conversions autorisées sont:
(int), (integer) - type
entier
(bool), (boolean) - booléen
(real), (double), (float) - type
double
(string) - type chaîne
(array) - type tableau
(object) - type objet
Exemple :
<?php
$foo = 1 + "10.5";
echo "\$foo = 1 + \"10.5\" alors \$foo est du type
float (11.5)<br>";
$foo = 1 + "-1.3e3";
echo "\$foo = 1 + \"-1.3e3\" alors \$foo est du type
float (-1299)<br>";
$foo = 1 + "bob-1.3e3";
echo "\$foo = 1 + \"bob-1.3e3\" alors \$foo est du type
integer (1)<br>";
$foo = 1 + "bob3";
echo "\$foo = 1 + \"bob3\" alors \$foo est du
type integer (11)<br>";
$foo = 1 + "10 Small
Pigs";
echo "\$foo = 1 + \"10 Small Pigs\" alors \$foo est du type
integer(11)<br>";
$foo = 1 + "10 Little
Piggies";
echo "\$foo = 1 + \"10 Little Piggies\" alors \$foo est du type
integer (11)<br>";
$foo = "10.0 pigs
" + 1.0;
echo "\$foo = 1 + \"10.0 pigs \" + 1.0 alors \$foo est du type
float (11)<br>";
?>
PHP met deux fonctions à notre disposition pour traiter les types de variable
Les fonctions gettype() et settype().
Elle détermine le type de données de la variable et renvoie l’une des valeurs suivantes :
• "integer" ;
• "double" ;
• "string" ;
• "array" ;
• "object" ;
• "class" ;
• "unknown type" ;
Elle définit le type d’une variable de façon explicite, et si le type ne peut pas être défini, elle renvoie une valeur false.
Exemples :
<?php
$var = 11.2; // $var est un
double
echo "\$var = $var et le type de \$var est ";
echo gettype($var);
echo "<br>";
// affiche : $var = 11.2 et le type
de $var est double
$var = (int)$var; // $var est
maintenant un entier de valeur 11
echo "\$var = $var et le type de \$var est ";
echo gettype($var);
echo "<br>";
// affiche : $var = 11 et le type
de $var est integer
$var = (double)$var; // $var est de
nouveau un double de valeur 11.0
echo "\$var = $var et le type de \$var est ";
echo gettype($var);
echo "<br>";
// affiche : $var = 11 et le type
de $var est double
$var = (string)$var; // $var est une
chaîne de caractères de valeur "11.0"
echo "\$var = $var et le type de \$var est ";
echo gettype($var);
echo "<br>";
// affiche : $var = 11 et le type
de $var est string
?>
Exercice : (Voir annexe Le transtypage Exercice 1).
Déclarer deux variables php et affecter leur la valeur de votre nom et prénom puis,
générer à l'aide de PHP le texte suivant,
Je me présente
Mon prénom est "votre prénom"!
(Déja vu à l'exercice 3 du chapitre " Traitement des variables dans les chaînes")
Affichez ensuite, le type de chaque variable.
Exercice : (Voir annexe Le transtypage Exercice 2).
Soit les variables $var1=1000, $var2=6.55957, $var3= ‘1’’, $var4=array()
Créer une page PHP afin d’afficher ces variables et leur type, puis convertisser
$var1 en type "double", $var2 en type "integer", $var3 en type "double" et $var4 en type "integer".
| Précédent | Suivant |