Bool�en
C'est le type le plus simple. Un bool�en repr�sente une valeur de v�rit�. Il peut valoir TRUE ou FALSE.
Note: Le type bool�en a �t� introduit en PHP 4.
Syntaxe
Pour sp�cifier un bool�en litt�ral, utilisez le mot cl� TRUE ou FALSE. Les deux sont insensibles � la casse.
<?php
$foo = True; // assigne la valeur TRUE � $foo
?>
Typiquement, voici quelques op�rateurs qui retournent un bool�en, pass� ensuite � une structure de contr�le.
<?php
// == est un op�rateur qui teste
// l'�galit� et retourne un bool�en
if ($action == "show_version") {
echo "La version est 1.23";
}
// ceci n'est pas n�cessaire...
if ($show_separators == TRUE) {
echo "<hr>\n";
}
// ...� la place, vous pouvez utiliser :
if ($show_separators) {
echo "<hr>\n";
}
?>
Conversion en bool�en
Pour convertir explicitement une valeur en bool�en, utilisez (bool) ou (boolean). Cependant, dans la plupart des cas, le transtypage n'est pas n�cessaire, sachant qu'une valeur sera automatiquement convertie si un op�rateur, une fonction ou une structure de contr�le demandent un argument de type bool�en.
Voir aussi le transtypage.
Lors d'une conversion en bool�en, les valeurs suivantes sont consid�r�es comme FALSE :
- le bool�en FALSE, lui-m�me
- l'entier 0 (z�ro)
- le nombre � virgule flottante 0.0 (z�ro)
- la cha�ne vide, et la cha�ne "0"
- un tableau avec aucun �l�ment
- un objet avec aucun membre, ni variable (uniquement en PHP 4)
- le type sp�cial NULL (incluant les variables non d�finies)
- les objets SimpleXML cr��s depuis des drapeaux vides
Toutes les autres valeurs sont consid�r�es comme TRUE (y compris toutes les ressources).
-1 est consid�r� comme TRUE, comme tous les nombres diff�rents de z�ro (n�gatifs ou positifs) !
<?php
var_dump((bool) ""); // bool(false)
var_dump((bool) 1); // bool(true)
var_dump((bool) -2); // bool(true)
var_dump((bool) "foo"); // bool(true)
var_dump((bool) 2.3e5); // bool(true)
var_dump((bool) array(12)); // bool(true)
var_dump((bool) array()); // bool(false)
var_dump((bool) "false"); // bool(true)
?>