Categoria
Tópicos que precisa dominar

Fundamentos

Sintaxe básica (variáveis, tipos, operadores)
Estruturas de controle (if, switch, for, foreach)
Funções nativas (isset, empty, explode, implode, in_array)
Manipulação de strings e arrays
Escopo de variáveis e constantes
Funções personalizadas (parâmetros, retorno, variádicos)
Superglobais ($_GET, $_POST, $_SERVER, $_SESSION, $_COOKIE)

POO (Programação Orientada a Objetos)

Classes, objetos, propriedades e métodos
Encapsulamento (public, protected, private)
Construtores e destrutores
Herança e polimorfismo
Interfaces e classes abstratas
Traits
Namespaces e autoload (Composer)
Métodos e propriedades estáticas

Manipulação de Dados

Manipulação de arquivos (fopen, fread, file_put_contents)
Upload de arquivos ($_FILES)
Validação e sanitização (filter_var, regex)
JSON (json_encode, json_decode)
Sessões e cookies
Senhas seguras (password_hash, password_verify)

Banco de Dados

PDO (conexão com MySQL/MariaDB)
Queries básicas (SELECT, INSERT, UPDATE, DELETE)
Prepared Statements (evitando SQL Injection)
Transações
Modelagem de tabelas e relacionamentos
ORM (Eloquent, Doctrine – opcional)

Boas Práticas

Padrão MVC (Model–View–Controller)
Organização de pastas e rotas
Separação de responsabilidades (SRP)
PSR (PSR-1, PSR-4, PSR-12)
Composer (dependências e autoload)
Tratamento de erros e exceções (try/catch)
Logs (error_log, Monolog)

Ferramentas e Frameworks

Laravel ou Symfony
Slim ou Lumen (micro-frameworks)
PHPUnit (testes)
Blade / Twig (templates)
APIs REST (roteamento, controllers, resources)
Consumo de APIs externas (cURL, Guzzle)

Segurança

CSRF e XSS (como prevenir)
SQL Injection (uso de prepared statements)
Escapando saída (HTML entities)
Autenticação segura (JWT, OAuth, roles)
HTTPS e headers de segurança
Rate limiting e proteção contra brute force

Nível Avançado

Design Patterns (Factory, Repository, Singleton, Strategy, Observer, etc.)
Arquitetura Hexagonal / Clean Architecture
Middlewares e pipeline de requisições
Injeção de dependência (containers)
Filas e jobs (Redis, RabbitMQ)
Cache (Redis, Memcached)
Deploy e DevOps (Docker, CI/CD, GitHub Actions)