1001Ferramentas
🐘 Conversores

JSON para Array PHP

Converta JSON em array PHP no estilo "short" (`[]`) ou "long" (`array()`). Útil para gerar configurações e seeds em projetos Laravel/Symfony. Tudo no navegador.

Transformar payload de API em arquivo de config

Você tem um JSON na mão, uma resposta de API, uma fixture, um trecho de documentação, e precisa dele como array PHP dentro de config/ ou de um seeder. Fazer isso a dedo significa trocar dois pontos por seta, ajustar aspas e descobrir o erro de sintaxe só quando o Artisan reclama. A conversão aqui devolve o arquivo pronto, já com a abertura de tag e o return na frente.

A entrada passa pelo parser JSON do próprio navegador e a saída é montada recursivamente. Array JSON vira lista PHP sem índice escrito, objeto vira array associativo com a chave entre aspas e seta. As strings saem com aspas simples, escapando apenas a barra invertida e a própria aspa, que é exatamente o que aspas simples do PHP exigem: nada de interpolação acidental de cifrão. O seletor no topo alterna entre colchete curto e a forma antiga com array e parênteses.

Duas conferidas valem a pena. Números inteiros muito grandes, acima de nove quatrilhões, perdem precisão ainda no parser JSON, então IDs longos deveriam vir como string na origem. E chave numérica em texto vira inteiro quando o PHP monta o array, o que pode bagunçar um mapa de códigos. O arquivo gerado é literal, sem json_decode em tempo de execução, o que é mais rápido e cacheável. A conversão acontece no navegador e o JSON não sai da sua máquina.

Perguntas frequentes

Qual estilo escolher, colchete curto ou array()?
O colchete curto é padrão desde o PHP 5.4 e é o que praticamente todo projeto novo usa. A forma longa só faz sentido se o style guide do time pedir ou se você precisa rodar em algo muito antigo.
A saída inclui json_decode?
Não. Ela gera o array literal precedido de return, no formato que o Laravel e o Symfony esperam de um arquivo de configuração. Nada é interpretado em tempo de execução.
Aspas simples não quebram meu texto?
Não. Barra invertida e apóstrofo são escapados antes de entrar na string. Como bônus, aspas simples não interpolam variáveis, que é o comportamento certo para dados.

Ferramentas Relacionadas