# Referência da Linguagem

- Sintaxe Básica
  - Tags PHP
  - Escapando o HTML
  - Separação de instruções
  - Comentários
- Tipos
  - Introdução
  - Sistema de tipagem
  - NULL
  - Booleanos
  - Inteiros
  - Números de ponto flutuante
  - Strings
  - Strings numéricas
  - Arrays
  - Objetos
  - Enumerações
  - Recursos
  - Chamáveis
  - Misto
  - Void
  - Never
  - Tipos de classes relativas
  - Tipos únicos
  - Iterável
  - Declarações de tipo
  - Conversão automática de tipos
- Variáveis
  - Básico
  - Variáveis Predefinidas
  - Escopo de variáveis
  - Variáveis variáveis
  - Variáveis de fontes externas
- Constantes
  - Sintaxe
  - Constantes Predefinidas
  - Constantes Mágicas
- Expressões
- Operadores
  - Precedência de Operadores
  - Aritméticos — Operadores Aritméticos
  - Incremento e Decremento — Operadores de Incremento/Decremento
  - Atribuição — Operadores de Atribuição
  - Binários — Operadores Binários
  - Comparação — Operadores de Comparação
  - Controle de Erro — Operadores de Controle de Erro
  - Execução — Operadores de Execução
  - Lógica — Operadores Lógicos
  - String — Operadores de String
  - Arrays — Operadores de Arrays
  - Tipo — Operadores de Tipo
  - Funcional — Operadores Funcionais
- Estruturas de Controle
  - Introdução
  - if
  - else
  - elseif/else if
  - Sintaxe Alternativa para estruturas de controle
  - while
  - do-while
  - for
  - foreach
  - break
  - continue
  - switch
  - match
  - declare
  - return
  - require
  - include
  - require_once
  - include_once
  - goto
- Funções
  - Funções definidas pelo usuário
  - Parâmetros e argumentos de funções
  - Retornando valores
  - Funções variáveis
  - Funções internas
  - Funções anônimas
  - Funções de Seta
  - Sintaxe de Chamáveis de Primeira Classe
- Classes e Objetos
  - Introdução
  - O Básico
  - Propriedades
  - Ganchos de Propriedade
  - Constantes de Classe
  - Autocarregamento de Classes
  - Construtores e Destrutores
  - Visibilidade
  - Herança de Objetos
  - Operador de Resolução de Escopo (::)
  - Palavra-Chave 'static'
  - Abstração de Classes
  - Interfaces de Objetos
  - Traits
  - Classes Anônimas
  - Sobrecarga
  - Iteração de Objetos
  - Métodos Mágicos
  - final
  - Clonando Objetos
  - Comparando Objetos
  - Vinculações Estáticas Tardias
  - Objetos e Referências
  - Serialização de Objetos — Serialização de Objetos - Objetos em sessões
  - Covariância e Contravariância
  - Objetos Lentos
  - Lista de alterações da POO
- Namespaces
  - Visão Geral — Visão geral de Namespaces
  - Namespaces — Definindo namespaces
  - Sub-namespaces — Declarando sub-namespaces
  - Definindo vários namespaces no mesmo arquivo
  - Fundamentos — Usando namespaces: Fundamentos
  - Namespaces e recursos de linguagem dinâmica
  - Palavra-chave namespace e __NAMESPACE__ — Palavra-chave namespace e constante __NAMESPACE__
  - Apelidando e Importando — Usando namespaces: Apelidando/Importando
  - Espaço Global
  - Recorrendo ao espaço global — Usando namespaces: recorrendo ao espaço global para funções e constantes
  - Regras de resolução de nomes
  - Perguntas Frequentes — Perguntas Frequentes: Coisas que você precisa saber sobre namespaces
- Enumerações
  - Visão Geral das Enumerações
  - Enumerações Básicas
  - Enumerações Apoiadas
  - Métodos de enumerações
  - Métodos estáticos de enumerações
  - Constantes de enumeração
  - Traits
  - Valores de enumeração em expressões constantes
  - Diferenças de objetos
  - Listagem de valores
  - Serialização
  - Porque enumerações não são extensíveis
  - Exemplos
- Erros
  - Básico
  - Erros no PHP 7
- Exceções
  - Estendendo exceções
- Fibers
- Geradores
  - Geradores, visão geral
  - Sintaxe do Gerador
  - Comparando geradores com objetos Iterator
- Atributos
  - Visão geral dos atributos
  - Sintaxe de Atributo
  - Lendo Atributos com a API Reflection
  - Declarando Classes de Atributos
- Referências
  - O que são referências
  - O que as referências fazem
  - O que referências não são
  - Passagem por referência
  - Retornando referências
  - Destruindo referências
  - Demonstrando referências
- Variáveis predefinidas
  - Superglobais — Variáveis nativas que estão sempre disponíveis em todos escopos
  - $GLOBALS — Referencia todas variáveis disponíveis no escopo global
  - $_SERVER — Informação do servidor e ambiente de execução
  - $_GET — Variáveis de string de consulta
  - $_POST — Dados de formulário de requisições POST HTTP
  - $_FILES — Variáveis de Upload de Arquivos HTTP
  - $_REQUEST — Variáveis de requisição HTTP
  - $_SESSION — Variáveis de sessão
  - $_ENV — Variáveis de ambiente
  - $_COOKIE — Cookies HTTP
  - $php_errormsg — A mensagem de erro anterior
  - $http_response_header — Cabeçalhos de resposta HTTP
  - $argc — O número de argumentos passados para o script
  - $argv — Array de argumentos passados para o script
- Exceções predefinidas
  - Exception
  - ErrorException
  - ClosedGeneratorException — A classe ClosedGeneratorException
  - Error
  - ArgumentCountError
  - ArithmeticError
  - AssertionError
  - DivisionByZeroError
  - CompileError
  - ParseError
  - TypeError
  - ValueError
  - UnhandledMatchError
  - FiberError
  - RequestParseBodyException
- Interfaces e Classes predefinidas
  - Traversable — A interface Traversable
  - Iterator — A interface Iterator
  - IteratorAggregate — A interface IteratorAggregate
  - InternalIterator — A classe InternalIterator
  - Throwable — A classe Throwable
  - Countable — A interface Countable
  - ArrayAccess — A interface ArrayAccess
  - Serializable — A interface Serializable
  - Closure — A classe Closure
  - stdClass — A classe stdClass
  - Generator — A classe Generator
  - Fiber — A classe Fiber
  - WeakReference — A classe WeakReference
  - WeakMap — A classe WeakMap
  - Stringable — A interface Stringable
  - UnitEnum — A interface UnitEnum
  - BackedEnum — A interface BackedEnum
  - SensitiveParameterValue — A classe SensitiveParameterValue
  - __PHP_Incomplete_Class — A classe __PHP_Incomplete_Class
- Atributos Predefinidos
  - Attribute — O atributo Attribute
  - AllowDynamicProperties — O atributo AllowDynamicProperties
  - DelayedTargetValidation — O atributo DelayedTargetValidation
  - Deprecated — O atributo Deprecated
  - NoDiscard — O atributo NoDiscard
  - Override — O atributo Override
  - ReturnTypeWillChange — O atributo ReturnTypeWillChange
  - SensitiveParameter — O atributo SensitiveParameter
- Opções e parâmetros de contexto
  - Opções de contexto de Socket — Lista de opções de contexto de Socket
  - Opções de contexto do HTTP — Lista de opções de contexto do HTTP
  - Opções de contexto do FTP — Lista de opções de contexto do FTP
  - Opções de contexto de SSL — Lista de opções de contexto de SSL
  - Opções de contexto do Phar — Lista de opções de contexto do Phar
  - Parâmetros de contexto — Listagem de parâmetros de contexto
  - Opções de contexto para Zip — Lista de opções de contexto de Zip
  - Opções de contexto Zlib — Lista de opções de contexto de Zlib
- Protocolos e empacotadores suportados
  - file:// — Acessando o sistema de arquivos local
  - http:// — Acessando URLs HTTP(s)
  - ftp:// — Acessando URLs FTP(s)
  - php:// — Acessando vários fluxos de E/S
  - zlib:// — Fluxos de compactação
  - data:// — Dados (RFC 2397)
  - glob:// — Encontra caminhos que correspondem a um padrão
  - phar:// — Arquivo PHP
  - ssh2:// — Shell Seguro 2
  - rar:// — RAR
  - ogg:// — Fluxos de áudio
  - expect:// — Fluxos de Interação entre Processos

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open