Entrada JSON

Saída PHP

O que é JSON para PHP?

PHP usa json_decode() para analisar JSON em arrays ou objetos. Para acesso tipado, você frequentemente precisa de classes. Esta ferramenta gera definições de classes PHP a partir do seu JSON. Use com json_decode() e mapeamento manual, ou com json_encode() para serialização. A extensão JSON do PHP é integrada. Propriedades tipadas PHP 7.4+ e atributos 8.0+ melhoram a segurança de tipos.

A conversão é executada no seu navegador. Defina o nome da classe e namespace na configuração. Ative Propriedades tipadas e Nullable. Nada é enviado a um servidor.

Como usar esta ferramenta

1

Colar o JSON

Cole seu JSON ou envie um arquivo. Defina o nome da classe e namespace na configuração. Ative Propriedades tipadas para type hints PHP 7.4+.

2

Verificar as classes

O painel direito exibe as classes PHP geradas. Objetos aninhados tornam-se classes separadas. Arrays obtêm array ou array<Type>. Use json_decode($str, false) para objetos, ou mapeie para suas classes.

3

Copiar ou baixar

Use <strong>Copiar</strong> ou <strong>Baixar</strong>. Cole no seu projeto. Para formatar o JSON primeiro, use o Formatador JSON. Para validação, use o Validador JSON.

Exemplos de JSON para PHP

Aqui está um exemplo de geração de classes PHP a partir de um objeto JSON.

Exemplo: Registro de assinante

Entrada JSON:

Entrada

Saída PHP gerada:

Saída

Quando JSON para PHP ajuda

Ao integrar APIs REST em Laravel, WordPress ou PHP puro, você frequentemente precisa de classes tipadas para respostas de API. Colar uma resposta de exemplo aqui fornece classes PHP para usar com json_decode() e mapeamento manual. Para testes de API, Postman ajuda. Payloads de webhook, arquivos de configuração e exportações de banco de dados em JSON também se beneficiam. Para extrair valores específicos de respostas grandes, use jq.

Perguntas frequentes

Propriedades tipadas?

PHP 7.4+ suporta propriedades de classe tipadas. Ativar isso fornece public string $name; em vez de não tipado. Requer PHP 7.4 ou superior.

camelCase vs snake_case?

PHP costuma usar snake_case; APIs JSON usam camelCase. O gerador usa as chaves JSON como estão. Adicione lógica personalizada ou use uma biblioteca que mapeie chaves.

Meus dados são enviados para algum lugar?

Não. A geração é executada no seu navegador.

Tipos nullable?

Ative para campos opcionais. PHP 7.1+ suporta ?Type para nullable. Útil quando o JSON pode omitir um campo.

Posso usar isso com Laravel?

Sim. As classes geradas funcionam em qualquer lugar. O Eloquent do Laravel usa padrões diferentes; para respostas de API, esses DTOs são adequados. Consulte o guia JSON do MDN para detalhes do formato.

Ferramentas relacionadas

PHP JSON, especificação JSON, RFC 8259, MDN, Laravel.