Guia Completo de Variáveis, Tipos de Dados e Operadores em PHP Já leu

Variáveis em PHP Uma variável é um espaço de memória que armazena um valor. Em PHP, todas as variáveis são precedidas pelo símbolo e não precisam ter seu tipo declarado explicitamente — a linguagem infere o tipo automaticamente. O nome da variável deve começar com uma letra ou underscore, seguido de letras, números ou underscores. PHP permite sobrescrever variáveis e reatribuir tipos sem avisos — isso oferece flexibilidade, mas exige cuidado do programador. Use convenções de nomenclatura como para melhorar a legibilidade. Variáveis não inicializadas geram um aviso se acessadas, portanto sempre inicialize antes de usar. Escopo de Variáveis O escopo define onde uma variável pode ser acessada. Variáveis globais são acessíveis em todo o script, enquanto variáveis locais existem apenas dentro de funções. Use a palavra-chave para acessar variáveis globais dentro de uma função ou use a superglobal . Tipos de Dados em PHP PHP suporta oito tipos de dados fundamentais: quatro escalares ( , , , ) e

Variáveis em PHP

Uma variável é um espaço de memória que armazena um valor. Em PHP, todas as variáveis são precedidas pelo símbolo $ e não precisam ter seu tipo declarado explicitamente — a linguagem infere o tipo automaticamente. O nome da variável deve começar com uma letra ou underscore, seguido de letras, números ou underscores.

<?php
$nome = "João Silva";
$idade = 28;
$altura = 1.75;
$ativo = true;

echo "Nome: " . $nome . ", Idade: " . $idade;
// Saída: Nome: João Silva, Idade: 28
?>

PHP permite sobrescrever variáveis e reatribuir tipos sem avisos — isso oferece flexibilidade, mas exige cuidado do programador. Use convenções de nomenclatura como camelCase para melhorar a legibilidade. Variáveis não inicializadas geram um aviso se acessadas, portanto sempre inicialize antes de usar.

Escopo de Variáveis

O escopo define onde uma variável pode ser acessada. Variáveis globais são acessíveis em todo o script, enquanto variáveis locais existem apenas dentro de funções. Use a palavra-chave global para acessar variáveis globais dentro de uma função ou use a superglobal $GLOBALS.

<?php
$globalVar = "Sou global";

function testaEscopo() {
    $localVar = "Sou local";
    global $globalVar;
    echo $globalVar; // Funciona
    echo $localVar;  // Funciona aqui
}

testaEscopo();
// echo $localVar; // Erro: não existe fora da função
?>

Tipos de Dados em PHP

PHP suporta oito tipos de dados fundamentais: quatro escalares (string, int, float, bool) e quatro compostos (array, object, callable, iterable), além de dois especiais (null e resource).

<?php
// Escalares
$string = "Olá, Mundo!";
$inteiro = 42;
$flutuante = 3.14159;
$booleano = true;

// Compostos
$array = ["maçã", "banana", "laranja"];
$associativo = ["nome" => "Maria", "idade" => 30];

// Especial
$nulo = null;

var_dump($string, $inteiro, $flutuante, $booleano);
?>

Você pode verificar o tipo de uma variável com gettype() ou funções especializadas como is_string(), is_int(), is_array(). A conversão de tipo é automática em muitos contextos (casting implícito), mas também pode ser feita explicitamente usando (int), (string), (array), entre outros.

Strings em Profundidade

Strings são sequências de caracteres. PHP oferece quatro formas de criar strings: aspas duplas (com interpolação), aspas simples (literal), heredoc e nowdoc. A interpolação permite inserir variáveis diretamente na string entre aspas duplas, economizando concatenações.

<?php
$produto = "Notebook";
$preco = 2500;

// Interpolação (funciona)
echo "Produto: $produto, Preço: R$ $preco";

// Concatenação (também funciona)
echo "Produto: " . $produto . ", Preço: R$ " . $preco;

// Heredoc (interpola variáveis)
$texto = <<<EOT
Bem-vindo ao $produto!
Preço especial: R$ $preco
EOT;
echo $texto;
?>

Arrays e Tipos Compostos

Arrays são coleções ordenadas de valores. PHP oferece arrays indexados (chaves numéricas automáticas) e arrays associativos (chaves customizadas). Ambos são incrivelmente flexíveis e podem conter qualquer tipo de dado, inclusive outros arrays.

<?php
// Indexado
$frutas = ["maçã", "banana", "laranja"];
echo $frutas[0]; // "maçã"

// Associativo
$usuario = [
    "nome" => "Carlos",
    "email" => "carlos@example.com",
    "idade" => 35
];
echo $usuario["nome"]; // "Carlos"

// Multidimensional
$matriz = [
    ["1,1" => 10, "1,2" => 20],
    ["2,1" => 30, "2,2" => 40]
];
echo $matriz[0]["1,1"]; // 10
?>

Operadores em PHP

Operadores executam ações sobre variáveis e valores. Os principais grupos são: aritméticos (+, -, *, /, %), de atribuição (=, +=, -=), de comparação (==, ===, !=, >), lógicos (&&, ||, !) e especiais como spaceship (<=>) e null coalescing (??).

<?php
// Aritméticos
echo 10 + 5;   // 15
echo 10 % 3;   // 1 (resto da divisão)

// Comparação: igualdade vs identidade
var_dump(5 == "5");   // true (comparação solta)
var_dump(5 === "5");  // false (tipo diferente)

// Lógicos
$x = true;
$y = false;
echo ($x && $y) ? "Ambos verdadeiros" : "Nem todos verdadeiros";

// Null coalescing (retorna primeiro valor não-nulo)
$nome = null;
echo $nome ?? "Anônimo"; // "Anônimo"

// Spaceship (comparação tri-valoatória)
echo (5 <=> 3);  // 1 (5 é maior)
echo (3 <=> 5);  // -1 (3 é menor)
echo (5 <=> 5);  // 0 (são iguais)
?>

Precedência e Associatividade

A ordem de execução dos operadores importa. Operadores aritméticos têm precedência maior que lógicos, e você pode usar parênteses para forçar uma ordem específica. Entender precedência evita bugs sutis em expressões complexas.

<?php
// Sem parênteses: * tem precedência sobre +
echo 2 + 3 * 4; // 14 (não 20)

// Com parênteses: controla a ordem
echo (2 + 3) * 4; // 20

// Atribuição em cadeia (associatividade à direita)
$a = $b = $c = 10;
echo $a; // 10

// Operador ternário (associatividade à esquerda — cuidado!)
$resultado = true ? "A" : true ? "B" : "C";
echo $resultado; // "A"
?>

Conclusão

Dominar variáveis, tipos de dados e operadores é o alicerce para programar em PHP com segurança. Lembre-se de três pontos: (1) sempre inicialize variáveis antes de usá-las e respeite o escopo para evitar conflitos; (2) use === em comparações críticas, pois == pode levar a comportamentos inesperados em PHP; (3) aproveite operadores modernos como null coalescing (??) e spaceship (<=>) para escrever código mais limpo e expressivo.

Com essa base sólida, você está pronto para explorar estruturas de controle, funções e programação orientada a objetos com confiança.

Referências


Artigos relacionados