Entendendo os diferentes tipos de dados
De Aprenda PHP - PHPit
No PHP uma variável pode conter valores de diferentes tipos, porém não é necessário declarar o tipo de uma variável para utilizá-la. O interpretador do PHP decidirá o tipo da variável através do seu conteúdo.
Tabela de conteúdo |
Inteiro
Um inteiro é um número sem qualquer separação decimal. Uma variável pode conter um valor inteiro com atribuições que sigam as seguintes sintaxes:
$int = 123; // Inteiro positivo na base decimal $int = -123; // Inteiro negativo na base decimal $int = 0234; // Inteiro na base octal (simbolizado pelo 0) equivale a 156 decimal $int = 0x34; // Inteiro na base hexadecimal(simbolizado pelo 0x) equivale a 52 decimal.
Ponto Flutuante
Um ponto flutuante (também conhecido como DOUBLE), é qualquer número que tenha separação de casa decimal. Uma variável pode ter um valor em ponto flutuante com atribuições que sigam as seguintes sintaxes:
$pf = 1.234; $pf = 23e4; // Equivale a 230.000
Strings
Strings são os tipos "texto".
ATENÇÃO: No seu código, TODAS as strings devem SEMPRE estar entre aspas, conforme nos exemplos a seguir.
As strings podem ser atribuidas de duas maneiras:
1) Utilizando aspas simples (') - O valor da variável será igual ao texto contido entre elas (exceto \\ e \');
$nome = 'fulano'; $str = 'Olá \n $nome'; echo $str;
No código acima será retornado
Olá $nome \n
pois utilizamos aspas simples.
2) Utilizando aspas duplas (") - Qualquer valor de variável ou caracter de escape será expandido antes de ser atribuído.
(Os caracteres especiais serão abordados com mais ênfase nos próximos capítulos).
$nome = 'Fulano'; $str = "Olá \n $nome"; echo $str;
Já no código acima será retornado
Olá fulano
pois o caractere \n significa quebra de linha.
(Obs.: Você não verá a quebra de linha no seu browser, pois o HTML apenas interpreta a tag
como quebra de linha. Para tanto, abra o código-fonte da página gerada e você verá a quebra de linha).
Caracteres de escape:
\n - Nova linha \r - Retorno de carro (semelhante a \n) \t - Tabulação horizontal \\ - A própria barra ( \ ) \$ - O símbolo $ \' - Aspa simples \" - Aspa dupla
Podemos utilizar os caracteres de escape em vários casos, como por exemplo:
$str = "Seu nome era \"Fulano\" e não tinha nem R\$ 1,00"; echo $str;
Nós utilizamos os caractes de escape para poder exibir as aspas duplas dentro da string, assim como o $.
É importante perceber que a utilização de aspas simples na declaração de uma string, torna a interpretação da mesma mais rápida, uma vez que o PHP não precisa buscar por valor a serem interpretados. Use aspas duplas somente quando necessário.
Array
Arrays em PHP podem ser observados como mapeamentos ou como vetores indexados. Mais precisamente, um valor do tipo array é um dicionário onde os índices são as chaves de acesso. Vale ressaltar que os índices podem ser valores de qualquer tipo e não somente inteiros. Inclusive, se os índices forem todos inteiros, estes não precisam formar um intervalo contínuo
Como a checagem de tipos em PHP é dinâmica, valores de tipos diferentes podem ser usados como índices de array, assim como os valores mapeados também podem ser de diversos tipos.
$cor[0] = "azul"; $cor[2] = "preto"; $cor[3] = "branco"; $cor["total"] = 3;
Definimos acima o array $cor e colocamos os valores nele, nós poderiamos também fazer da seguinte forma:
$cor = array(0 => "azul", 1 => "preto", 2 => "branco", "total" => 3);
Objetos
Um objeto pode ser inicializado utilizando o comando new para instanciar uma classe para uma variável.
class novaclasse {
function teste() {
echo “testando”;
}
}
$t = new novaclasse;
$t -> teste();
A utilização de objetos será mais detalhada nos próximos capítulos.
Booleanos
Os valores booleanos (boolean), só podem assumir dois valores: Verdadeiro ou Falso.
São considerados como verdadeiro qualquer valor diferente de 0, ' ', null, false.
// Exemplo de verdadeiros $str = true; $str = 'fulano'; $str = 1;
// Exemplos de falso: $str = false $str = ' ' $str = null $str = 0;
Os valores booleanos são utilizados para saber se um teste é verdadeiro ou falso, resultando na execução de alguns comandos, ou não.

