Les types
PHP Manual

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.

Syntaxe

Pour spécifier un booléen littéral, utilisez la constante TRUE ou FALSE. Les deux sont insensibles à la casse.

<?php
$foo 
true// assigne la valeur TRUE à $foo
?>

Typiquement, le résultat d'un opérateur qui retourne 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, avec la même signification :
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 :

Toutes les autres valeurs sont considérées comme TRUE (y compris toutes les ressources et NAN).

Avertissement

-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)
?>

Les types
PHP Manual