O que é PHP?
Entenda a história, a finalidade e por que PHP continua sendo uma das linguagens mais relevantes do desenvolvimento web.
A história do PHP
PHP nasceu em 1994 quando Rasmus Lerdorf criou um conjunto de scripts em linguagem C para monitorar acessos ao seu currículo online. Ele chamou esse conjunto de Personal Home Page Tools — daí a sigla PHP.
Com o tempo, a linguagem evoluiu muito. Hoje, PHP significa PHP: Hypertext Preprocessor (um acrônimo recursivo, bem ao estilo dos programadores!). Na versão atual — PHP 8 — a linguagem é moderna, rápida e cheia de recursos avançados.
PHP é usado por 78% dos sites que possuem um servidor back-end identificável — incluindo WordPress, Facebook (em suas origens) e Wikipedia.
Para que serve o PHP?
PHP é uma linguagem de programação server-side (lado do servidor), ou seja, o código PHP é executado no servidor web, e o resultado enviado ao navegador do usuário é apenas HTML puro.
Com PHP você pode:
- Criar páginas web dinâmicas (conteúdo que muda conforme o usuário)
- Conectar e manipular bancos de dados (MySQL, PostgreSQL etc.)
- Processar formulários, logins e cadastros
- Criar APIs REST para aplicações mobile e SPAs
- Gerenciar arquivos, sessões e cookies
PHP vs outras linguagens
PHP não é a única linguagem back-end — existem também Python (Django/Flask), Node.js (JavaScript), Ruby on Rails e Java. Mas PHP tem vantagens claras:
Hosting barato e amplamente disponível · Curva de aprendizado suave · Enorme ecossistema (WordPress, Laravel, Symfony) · Integração nativa com MySQL · Documentação excelente em português.
// ATIVIDADE INTERATIVA
Teste seu conhecimento!
O que significa a sigla PHP nos dias de hoje?
Onde o PHP é executado?
Para que o PHP funcione, você precisa de um servidor web com o módulo PHP instalado. O fluxo é simples:
- O usuário acessa uma URL no navegador
- O servidor web recebe a requisição e repassa ao interpretador PHP
- O PHP processa o código, consulta o banco de dados se necessário
- O resultado (HTML) é enviado de volta ao navegador
Abrir um arquivo .php diretamente no navegador não funciona. Você precisa de um servidor local como XAMPP — veremos isso na próxima aula!
Exercícios Propostos
Questões de fixação do conteúdo desta aula
Explique com suas próprias palavras a diferença entre uma linguagem client-side (como JavaScript no navegador) e uma linguagem server-side (como PHP). Dê um exemplo de situação em que cada uma seria mais adequada.
Cite três exemplos reais de sistemas ou sites conhecidos que utilizam PHP no back-end e explique brevemente o que cada um deles faz.
Descreva o fluxo completo de uma requisição web PHP: o que acontece desde o momento em que o usuário digita uma URL até ver a página no navegador? Liste pelo menos 4 etapas.
Instalação com XAMPP
Configure seu ambiente de desenvolvimento local em minutos usando o XAMPP — a maneira mais fácil de rodar PHP no seu computador.
O que é o XAMPP?
XAMPP é um pacote gratuito que instala de uma vez tudo que você precisa para rodar PHP localmente: o servidor web Apache, o banco de dados MySQL (MariaDB), o interpretador PHP e mais. O nome é uma sigla:
- X — Cross-platform (funciona no Windows, Mac e Linux)
- A — Apache (servidor web)
- M — MariaDB/MySQL (banco de dados)
- P — PHP
- P — Perl
Passo a passo: instalando o XAMPP
Passo 1 — Download: Acesse apachefriends.org e baixe a versão mais recente do XAMPP para seu sistema operacional.
Passo 2 — Instalação: Execute o instalador e siga os passos. Mantenha as opções padrão (Apache e MySQL marcados).
Passo 3 — Iniciar serviços: Abra o XAMPP Control Panel e clique em Start ao lado de Apache. O botão ficará verde.
Passo 4 — Testar: Abra o navegador e acesse http://localhost. Se aparecer a tela de boas-vindas do XAMPP, funcionou!
No Windows: C:\xampp\htdocs\
No Mac: /Applications/XAMPP/htdocs/
Crie uma pasta com o nome do seu projeto dentro de htdocs e acesse via http://localhost/seu-projeto/
Verificando a instalação do PHP
Crie um arquivo chamado info.php dentro da pasta htdocs com o seguinte conteúdo:
2phpinfo();
3?>
Acesse http://localhost/info.php — será exibida uma página completa com todas as informações da sua instalação PHP.
Nunca deixe o arquivo phpinfo.php em um servidor de produção! Ele expõe informações sensíveis do servidor.
// ATIVIDADE INTERATIVA
Monte a sigla XAMPP!
Arraste cada tecnologia para a letra correta da sigla XAMPP.
Exercícios Propostos
Questões de fixação do conteúdo desta aula
O que significa cada letra da sigla XAMPP? Por que o "X" representa "Cross-platform"?
Qual é a função da pasta htdocs no XAMPP? Por que seus arquivos PHP devem ficar obrigatoriamente dentro dela?
Crie um arquivo meu_php.php dentro do htdocs com a função phpinfo(). Acesse-o pelo navegador e identifique: qual é a versão do PHP instalada e quais extensões estão habilitadas? Use o ambiente de código abaixo para experimentar.
Hello, World!
Escreva seu primeiro código PHP e entenda a estrutura básica de um script. Aqui começa sua jornada como desenvolvedor PHP.
Estrutura básica de um arquivo PHP
Todo código PHP deve estar dentro das tags PHP. Elas informam ao servidor onde o código PHP começa e termina:
2// Seu código PHP fica aqui
3// Comentários começam com //
4?>
Em arquivos que contêm apenas código PHP (sem HTML), é recomendado omitir a tag de fechamento ?>. Isso evita erros causados por espaços em branco acidentais após o fechamento.
Seu primeiro Hello World!
A função echo é a mais básica do PHP — ela simplesmente imprime texto na tela. Veja o programa mais famoso da programação:
2
3echo "Hello, World!";
4
5// Você também pode usar aspas simples
6echo 'Olá, PHP!';
7
8// Saída: Hello, World!Olá, PHP!
Em PHP, cada instrução termina com ;. Esquecer o ponto e vírgula é o erro mais comum de iniciantes e causa um Parse error.
Misturando PHP com HTML
Uma das grandes forças do PHP é poder ser misturado com HTML. O PHP gera o conteúdo dinâmico e o HTML cuida da estrutura visual:
2<html>
3<body>
4 <h1><?php echo "Bem-vindo!"; ?></h1>
5 <p>Data de hoje: <?= date('d/m/Y') ?></p>
6</body>
7</html>
A tag <?= valor ?> é um atalho para <?php echo valor; ?>. Muito usado em templates HTML.
// AMBIENTE DE CÓDIGO
// ATIVIDADE INTERATIVA
Preencha as lacunas!
Complete o código PHP para exibir a mensagem corretamente.
"Meu primeiro PHP!"
Exercícios Propostos
Pratique os conceitos desta aula no ambiente de código acima
Usando o ambiente de código acima, escreva um script PHP que exiba seu nome, sua idade e sua cidade, cada informação em uma linha separada. Use o comando echo com \n para quebrar a linha.
Qual a diferença entre aspas duplas (" ") e aspas simples (' ') no echo do PHP? Teste no ambiente acima e descreva o comportamento observado.
Usando o ambiente de código, crie um script PHP que exiba uma tabela HTML com 3 linhas de dados (nome, profissão, linguagem favorita). O PHP deve gerar o HTML da tabela via echo.
Como o PHP Funciona
Entenda o ciclo de vida de uma requisição PHP, o papel do interpretador e como o PHP transforma código em páginas web dinâmicas.
O ciclo de vida de uma requisição
Quando você acessa um site PHP, ocorre uma sequência precisa de eventos. Vamos entender cada etapa:
1. Navegador envia HTTP Request → 2. Servidor Apache recebe → 3. Apache aciona o interpretador PHP → 4. PHP executa o script → 5. PHP consulta o BD (opcional) → 6. PHP gera HTML → 7. Apache envia HTTP Response → 8. Navegador renderiza a página.
O Interpretador PHP (Zend Engine)
O PHP usa o Zend Engine como seu motor de interpretação. Diferente de linguagens compiladas (como C ou Java), o PHP é interpretado — o código é lido e executado diretamente, linha por linha, a cada requisição.
O processo interno do Zend Engine tem 4 fases:
- Lexing (Tokenização): o código é quebrado em "tokens" (palavras-chave, operadores, strings...)
- Parsing: os tokens são organizados em uma árvore sintática (AST)
- Compilation: a AST é transformada em opcodes (bytecode)
- Execution: o Zend Engine executa os opcodes e gera a saída
PHP é stateless — sem memória entre requisições
Uma característica crucial do PHP é que ele é stateless: cada requisição é tratada de forma independente. O PHP não "lembra" de uma requisição para outra. Isso significa que:
- Variáveis criadas em uma requisição desaparecem quando ela termina
- Para persistir dados entre requisições, usamos sessions, cookies ou banco de dados
- Cada usuário que acessa o site gera sua própria execução independente do PHP
Entender o stateless ajuda a compreender por que sistemas de login precisam de sessões e por que carrinhos de compra precisam ser salvos no banco de dados.
Modo CLI: PHP na linha de comando
PHP não serve apenas para web! Você pode executar scripts PHP direto no terminal, sem precisar de um servidor web:
php hello.php
# Executar código PHP diretamente
php -r "echo 'Olá do terminal!';"
# Verificar versão do PHP
php --version
// ATIVIDADE INTERATIVA
PHP é stateless — o que isso significa?
Um usuário faz login em um site PHP e depois acessa outra página. O que acontece com as informações do usuário?
// AMBIENTE DE CÓDIGO
Exercícios Propostos
Consolidando o entendimento do ciclo PHP
Explique o que significa PHP ser uma linguagem interpretada em contraste com linguagens compiladas. Quais são as vantagens e desvantagens desse modelo para desenvolvimento web?
Um desenvolvedor novato criou uma variável $usuario_logado = true na página de login e ficou surpreso que ela não estava disponível na página de perfil. Explique por que isso acontece e como resolver o problema corretamente.
Usando o ambiente de código desta aula, explore as constantes predefinidas do PHP. Exiba no mínimo 5 constantes diferentes (além das já presentes no exemplo). Pesquise na documentação oficial php.net quais constantes estão disponíveis.
Sintaxe e Estrutura PHP
Domine os elementos fundamentais da sintaxe PHP: comentários, tipos de dados básicos, constantes e as boas práticas de escrita de código.
Comentários no PHP
Comentários são trechos de código ignorados pelo interpretador. Servem para documentar e explicar o código:
2
3// Comentário de linha única (estilo C++)
4
5# Comentário de linha única (estilo Shell)
6
7/*
8 * Comentário de
9 * múltiplas linhas
10 */
11
12echo "Este código é executado"; // Este comentário não
13?>
Tipos de dados primitivos
PHP possui 8 tipos primitivos de dados, divididos em 3 categorias:
2
3// TIPOS ESCALARES
4$inteiro = 42; // int
5$decimal = 3.14; // float
6$texto = "PHP rocks"; // string
7$verdadeiro = true; // bool
8
9// TIPOS COMPOSTOS
10$lista = ["PHP", "MySQL", "HTML"]; // array
11
12// TIPO ESPECIAL
13$vazio = null; // null
14
15// Verificar tipo com gettype()
16echo gettype($inteiro); // "integer"
17echo gettype($texto); // "string"
18?>
Constantes: valores que não mudam
Ao contrário das variáveis, constantes têm um valor fixo definido uma única vez e nunca podem ser alteradas durante a execução. Por convenção, seus nomes são escritos em CAIXA ALTA:
2
3// Definindo constantes
4define('VERSAO_APP', '1.0.0');
5define('PI', 3.14159);
6define('MAX_TENTATIVAS', 3);
7
8// Forma moderna (PHP 5.3+)
9const NOME_SITE = 'PHPMaster';
10
11echo VERSAO_APP; // 1.0.0
12echo NOME_SITE; // PHPMaster
13// Constantes não usam $ !
14?>
Variáveis começam com $ e podem mudar de valor. Constantes não têm $, são acessíveis em qualquer escopo e seu valor nunca muda.
Boas práticas de nomenclatura
Um código limpo e legível é fundamental. O PHP segue convenções importantes:
- Variáveis:
$minha_variavelou$minhaVariavel(snake_case ou camelCase) - Funções:
minha_funcao()(snake_case, padrão PHP) - Classes:
MinhaClasse(PascalCase) - Constantes:
MINHA_CONSTANTE(UPPER_SNAKE_CASE)
// ATIVIDADE INTERATIVA
Desafio Final — Módulo 1
Qual das opções abaixo está INCORRETA sobre variáveis e constantes em PHP?
// AMBIENTE DE CÓDIGO
Exercícios Finais — Módulo 1
Consolide todo o aprendizado do Módulo 1
Usando o ambiente de código acima, crie um script PHP que declare variáveis de todos os tipos primitivos (int, float, string, bool, null) e exiba o nome do tipo e o valor de cada uma usando gettype().
Crie um script PHP que simule um "cartão de visita digital". Defina constantes para o nome da empresa e o site, e variáveis para nome, cargo e e-mail. Exiba todas as informações formatadas de maneira legível.
Crie um script PHP completo que exiba um relatório de diagnóstico do ambiente PHP, incluindo: versão do PHP, sistema operacional, data/hora atual formatada em português, e pelo menos 3 constantes predefinidas do PHP (além das básicas). Formate a saída de forma organizada.