O PHP suporta oito tipos primitivos.
Quatro tipos escalares:
Três tipos compostos:
E finalmente dois tipos especiais:
Este manual também introduz alguns pseudo-tipos por razões de legibilidade:
E a pseudo-variável $...
.
Algumas referências para o tipo "double" podem aparecer no manual. Considere o tipo double como sendo o float; os dois nomes existem por razões históricas.
O tipo de uma variável geralmente não é definido pelo programador: isto é decidido em tempo de execução pelo PHP, dependendo do contexto no qual a variável é usada.
Nota: Para checar o tipo e valor de uma expressão, utilize a função var_dump().
Para ter uma representação legível de um tipo para depuração, use a função gettype(). Para verificar por um certo tipo, não use gettype(), mas sim as funções is_tipo. Alguns exemplos:
<?php
$a_bool = TRUE; // um booleano
$a_str = "foo"; // uma string
$a_str2 = 'foo'; // uma string
$an_int = 12; // um inteiro
echo gettype($a_bool); // mostra: boolean
echo gettype($a_str); // mostra: string
// Se ele é um inteiro, incrementa-o com quatro
if (is_int($an_int)) {
$an_int += 4;
}
// Se $bool é uma string, mostre-a
// (não imprime nada)
if (is_string($a_bool)) {
echo "String: $a_bool";
}
?>
Para forçar a conversão de uma variável para um certo tipo, converta a variável ou use a função settype() nela.
Note que uma variável pode ser avaliada com valores diferentes em certas situações, dependendo de qual tipo ela é no momento. Para mais informações, veja a seção Manipulação de tipos. A tabela de conversão de tipos também pode ser útil, como mostra exemplos de comparações de vários tipos.