Olá Pessoal,
Dando continuidade com o nosso minicurso online PHP para Iniciantes, vamos tratar hoje de Tipos de Dados e Operadores em PHP. É um assunto importante, espero que aproveitem bastante.
TIPOS DE DADOS
O PHP suporta oito tipos de dados: string, inteiro, booleano (lógico), float, arrays, objetos, resource e NULL. Existem também pseudo-tipos que não serão abordados nesse tutorial. Uma coisa importante sobre tipos PHP: essa não é uma linguagem tipada, ou seja, não definimos os tipos de dados na declaração de variáveis e constantes. Em PHP os tipos são definidos automaticamente no momento da execução do código. Vamos descrever rapidamente cada um dos tipos listados acima:
String
Uma string é uma cadeia de caracteres alfanuméricos. Sempre que precisarmos trabalhar com texto, utilizaremos variáveis do tipo string. O PHP possui uma série de funções para manipulação de strings. Estudaremos esse assunto em uma etapa posterior desse mini-tutorial. Para declarar strings podemos usas apóstrofos ou aspas duplas. Veja o código abaixo:
1 2 3 4 5 6 | <?php //Declarando strings com aspas simples (apóstrofos) $nome = 'Diego'; //Declarado strings com aspas duplas $sobrenome = "Marques"; ?> |
Inteiro e Float (Double ou Ponto Flutuante)
O tipo inteiro (integer) engloba todos os números do conjunto Z (números inteiros). Admite valores negativos e positivos. Usamos valores inteiros para armazenar números e realizar cálculos numéricos. O tipo Float engloba o tipo inteiro, e admite valores do conjunto dos números reais, ou seja, fracionários. Números fracionários são divididos por “.”, por exemplo: 2.5, ou 2.3333. Veja o código abaixo:
1 2 3 4 5 6 | <?php $preco = 30; $desconto = 2.5; $total = $preco - ($preco * $desconto/100); echo $total; ?> |
Booleanos (Lógicos)
Valores lógicos ou booleanos são aqueles que expressam o resultado de uma sentença lógica: verdadeiro ou falso. Para especificar um booleano, usaremos as palavras-chave TRUE ou FALSE. Valores lógicos são utilizados como verificação em condicionais e alguns loops. Veja o código abaixo:
1 2 3 4 5 6 7 8 9 10 | <?php $maiorIdade = TRUE; //Verifico se é maior de idade if ($maiorIdade) { echo "Pode entrar"; } else { echo "Volte"; } ?> |
Arrays
Arrays são listas de dados, armazenados na memória. Nos arrays associamos dados de diferentes tipos à chaves, e através delas resgatamos cada valor individualmente. Um array admite diferentes tipos dados em suas posições, sendo possível criar um array misto. Dos tipos suportados por um array, listamos: strings, numéricos, booleanos, arrays (podemos salvar um array dentro de outro) e objetos. Veja abaixo como declarar um array:
1 2 3 4 5 6 | <?php $nomes = array("Huguinho", "Zezinho", "Luisinho"); $perfil = array("João" => array("Contador", 26, 5.500, true), "Maria" => array("Professora", 30, 2.200, false)); var_dump($nomes); print_r($perfil); ?> |
Resource
Resource (recurso) é um tipo de dados especial no PHP que faz uma referência a um recurso externo. Algumas funções especiais do PHP usam recursos, como por exemplo mysql_connect() – conexão ao banco de dados, e fopen() – abrir arquivos. Como um resource sustenta manipuladores de arquivos não é possível converter nenhum valor para um resource.
OPERADORES
O PHP possui uma série de operadores para manipulação de variáveis. Vamos estudá-los rapidamente:
Operadores Aritméticos
Lembra da aritmética básica do colégio? Pois esses operadores no permitem fazer a mesma coisa:
$a + $b Efetua a soma de valores numéricos;
$a – $b Efetua a subtração de valores numéricos;
$a * $b Multiplica valores numéricos;
$a / $b Divide valores numéricos;
$a % $b Retorna o resto da divisão de $a por $b.
Veja o código abaixo:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <?php $a = 5; $b = 10; echo $a + $b; echo "<br />"; echo $a - $b; echo "<br />"; echo $a * $b; echo "<br />"; echo $a / $b; echo "<br />"; echo $a % $b; echo "<br />"; ?> |
Operadores de Comparação
Os operadores de comparação nos permitem, como o próprio nome diz, comparar dois valores. O resultado dessa comparação será um valor lógico (TRUE ou FALSE). Veja a tabela dos operadores de atribuição:
$a == $b Igual Verdadeiro (TRUE) se $a é igual a $b.
$a === $b Idêntico Verdadeiro (TRUE) se $a é igual a $b, e eles são do mesmo tipo.
$a != $b Diferente Verdadeiro se $a não é igual a $b.
$a <> $b Diferente Verdadeiro se $a não é igual a $b.
$a !== $b Não idêntico Verdadeiro de $a não é igual a $b, ou eles não são do mesmo tipo.
$a < $b Menor que Verdadeiro se $a é estritamente menor que $b.
$a > $b Maior que Verdadeiro se $a é estritamente maior que $b.
$a <= $b Menor ou igual Verdadeiro se $a é menor ou igual a $b.
$a >= $b Maior ou igual Verdadeiro se $a é maior ou igual a $b.
Veja esses operadores em ação:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | <?php $a = 5; $b = 10; //Verifico se os números são iguais if ($a == $b) { echo "São iguais"; } //Verifico se são idênticos if ($a === $b) { echo "São idênticos"; } //Verifico se são diferentes if ($a <> $b) { echo "São diferentes"; } //Verifico se não são idênticos if ($a !== $b) { echo "São diferentes"; } //Verifico se $a é maior do que $b if ($a > $b) { echo "A é maior do que B"; } //Verifico se $a é menor do que $b if ($a < $b) { echo "A é menor do que B"; } //Verifico se $a é maior ou igual a $b if ($a >= $b) { echo "A é maior ou igual a B"; } //Verifico se $a é menor ou igual a $b if ($a <= $b) { echo "A é menor ou igual a B"; } ?> |
Em comparações, o PHP entende o valor 0 (zero) como equivalente ao valor lógico FALSE. Para evitar problemas em situações onde 0 deva ser entendido como um inteiro, dentro de uma comparação, usamos saídas como as de baixo:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | <?php $a = 0; //O valor ZERO de $a será entendido como FALSE na comparação if ($a == false) { echo "É falso"; } //Verificando se $a é idêntico a FALSE, evito a confusão com o valor 0 if ($a === false) { echo "Não é idêntico"; } //Verificando se $a é idêntico a ZERO if ($a === 0) { echo "É falso"; } ?> |
Operadores de Atribuição
Operadores de atribuição servem para apontar um valor à uma variável, ou seja, atribuem valores à variáveis. O operador de atribuição básico é o “=”, podemos combiná-lo com operadores aritméticos, de string e arrays. Veja abaixo alguns exemplos:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | <?php //Atribuo o valor 5 à variável $a $a = 5; //Incremento $a em 10 $a += 10; //Decremento $a em 10 $a -=10; //Multiplico $a por 10 $a *= 10; //Divido $a por 10 $a /= 10; ?> |
Operadores Lógicos
Manipulam valores lógicos, combinando expressões a serem agrupadas em testes condicionais. Veja a tabela de operadores lógicos:
$a and $b E Verdadeiro (TRUE) se tanto $a quanto $b são verdadeiros.
$a or $b OU Verdadeiro se $a ou $b são verdadeiros.
$a xor $b XOR Verdadeiro se $a ou $b são verdadeiros, mas não ambos.
! $a NÃO Verdadeiro se $a não é verdadeiro.
$a && $b E Verdadeiro se tanto $a quanto $b são verdadeiros.
$a || $b OU Verdadeiro se $a ou $b são verdadeiros.
Veja alguns códigos:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | <?php $a = 5; $b = 10; //Verifico se $a < $b e $a é par if (($a < $b) && ($a % 2 === 0)) { echo "A é menor do que B e é par"; } $maiorIdade = true; if ($maiorIdade || $a > $b) { echo "Uma das opções é falsa"; } $menorIdade = false; if (!$menorIdade) { echo "É maior de idade"; } ?> |
No tutorial de amanhã entraremos no tema estruturas condicionais. Até lá.
Abraços,
Diego.