Logo
You
Code

Booleanos

Autor YouCode - http://www.youcode.com.ar/php/booleanos-19

Este es el tipo más simple. Un boolean expresa un valor de verdad. Puede ser TRUE or FALSE.

Sintaxis
Para especificar un literal boolean, use alguna de las palabras clave TRUE o FALSE. Ambas son insensibles a mayúsculas y minúsculas.
<?php
$foo True// asigna el valor TRUE a $foo
?>
Usualmente, el resultado de un operador que devuelve un valor boolean es pasado a una estructura de control.
<?php
// == es un operador que prueba por
// igualdad y devuelve un booleano
if ($accion == "mostrar_version") {
    echo "La versión es 1.23";
}

// esto no es necesario...
if ($mostrar_separadores == TRUE) {
    echo "<hr>\n";
}

// ...porque se puede escribir simplemente:
if ($mostrar_separadores) {
    echo "<hr>\n";
}
?>
Conversión a booleano
Para convertir explícitamente un valor a boolean, use el moldeamiento (bool) o (boolean). Sin embargo, en la mayoría de casos no es necesario usar el moldeamiento, ya que un valor será convertido automáticamente si un operador, función o estructura de control requiere un argumento tipo boolean.
Vea también Manipulación de Tipos.
Cuando se realizan conversiones a boolean, los siguientes valores son considerados FALSE:
  • el boolean FALSE mismo
  • el integer 0 (cero)
  • el float 0.0 (cero)
  • el valor string vacío, y el string "0"
  • un array con cero elementos
  • un object con cero variables miembro (sólo en PHP 4)
  • el tipo especial NULL (incluyendo variables no definidas)
  • objetos SimpleXML creados desde etiquetas vacías
Cualquier otro valor es considerado TRUE (incluyendo cualquier resource).
Advertencia
-1 es considerado TRUE, como cualquier otro número diferente a cero (¡ya sea negativo o positivo!)

 

<?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)
?>
http://www.youcode.com.ar/php/booleanos-19