Manual do PHP
Anterior | Capítulo 6. Tipos | Próxima

# Booleanos

Este é o tipo mais fácil. Um booleano expressa um valor de verdade. Ele pode ser `TRUE` ou `FALSE`.

> Nota: O tipo booleano foi introduzido no PHP 4.

## Sintaxe

Para especificar um literal booleano, use as palavras chave `TRUE` ou `FALSE`. Ambas são insensitivas ao caso.

`<?php $foo = True; // assimila o valor TRUE para $foo ?>`

Usualmente você pode utilizar algum tipo de operador que retorne um valor booleano, e passá-lo para uma estrutura de controle.

`<?php // == é um operador que testa // igualdade e retorna um booleano if ($action == "mostrar_versao") { echo "A versão é 1.23"; } // isto não é necessário ... if ($exibir_separadores == TRUE) { echo "<hr>\n"; } // ... porque você pode simplesmente escrever isso: if ($exibir_separadores) { echo "<hr>\n"; } ?>`

## Convertendo para booleano

Para converter explicitamente um valor para booleano, utilize-se dos modificadores (bool) ou (boolean). Entretanto, na maioria dos casos, você não precisa utilizar o modificador, desde que qualquer valor será convertido automaticamente se um operador, função ou estrutura de controle requerer um argumento booleano.

Veja também Manipulação de tipos.

Quando convertendo para booleano, os seguintes valores são considerados `FALSE`:

- o próprio booleano `FALSE`

- o inteiro 0 (zero)

- o ponto flutuante 0.0 (zero)

- uma string vazia e a string "0"

- um array sem elementos

- um objeto sem elementos membros

- o tipo especial NULL (incluindo variáveis não definidas)

Qualquer outro valor é considerado `TRUE` (incluindo qualquer recurso).

Atenção
-1 é considerado `TRUE`, como qualquer valor não zero (negativos ou positivos)!

`<?php echo gettype((bool) ""); // bool(false) echo gettype((bool) 1); // bool(true) echo gettype((bool) -2); // bool(true) echo gettype((bool) "foo"); // bool(true) echo gettype((bool) 2.3e5); // bool(true) echo gettype((bool) array(12)); // bool(true) echo gettype((bool) array()); // bool(false) ?>`

Anterior | Principal | Próxima
Tipos | Acima | Inteiros