JSON a PHP
Convertir JSON a clases POJO de PHP para desarrollo PHP
Entrada JSON
Salida PHP
¿Qué es JSON a PHP?
PHP usa json_decode() para parsear JSON en arrays u objetos. Para acceso tipado, a menudo quieres clases. Esta herramienta genera definiciones de clases PHP desde tu JSON. Úsalas con json_decode() y mapeo manual, o con json_encode() para serialización. La extensión JSON de PHP está integrada. Las propiedades tipadas de PHP 7.4+ y atributos 8.0+ mejoran la seguridad de tipos.
La conversión se ejecuta en tu navegador. Configura el nombre de clase y namespace en la configuración. Activa Propiedades tipadas y Nullable. No se envía nada a ningún servidor.
Cómo usar esta herramienta
Pegar JSON
Pega tu JSON o sube un archivo. Configura el nombre de clase y namespace en la configuración. Activa Propiedades tipadas para type hints de PHP 7.4+.
Revisar las clases
El panel derecho muestra las clases PHP generadas. Los objetos anidados se convierten en clases separadas. Los arrays obtienen array o array<Type>. Usa json_decode($str, false) para objetos, o mapea a tus clases.
Copiar o descargar
Usa <strong>Copiar</strong> o <strong>Descargar</strong>. Pégalo en tu proyecto. Para formatear JSON primero, usa el Formateador JSON. Para validación, usa el Validador JSON.
Ejemplos de JSON a PHP
Aquí un ejemplo de generación de clases PHP desde un objeto JSON.
Ejemplo: Registro de suscriptor
Entrada JSON:
Salida PHP generada:
Cuándo ayuda JSON a PHP
Al integrar APIs REST en Laravel, WordPress o PHP plano, a menudo necesitas clases tipadas para respuestas de API. Pegar una respuesta de ejemplo aquí te da clases PHP para usar con json_decode() y mapeo manual. Para pruebas de API, Postman ayuda. Payloads de webhook, archivos de configuración y exportaciones de base de datos en JSON se benefician del mismo tratamiento. Para extraer valores específicos de respuestas grandes primero, usa jq.
Preguntas frecuentes
¿Propiedades tipadas?
PHP 7.4+ soporta propiedades de clase tipadas. Activar esto te da public string $name; en lugar de sin tipo. Requiere PHP 7.4 o posterior.
¿camelCase vs snake_case?
PHP suele usar snake_case; las APIs JSON usan camelCase. El generador usa las claves JSON tal cual. Añade lógica personalizada o usa una biblioteca que mapee claves.
¿Se envían mis datos a algún sitio?
No. La generación se ejecuta en tu navegador.
¿Tipos nullable?
Activa para campos opcionales. PHP 7.1+ soporta ?Type para nullable. Útil cuando JSON puede omitir un campo.
¿Puedo usar esto con Laravel?
Sí. Las clases generadas funcionan en cualquier lugar. Eloquent de Laravel usa patrones diferentes; para respuestas de API, estos DTOs están bien. Ver la guía JSON de MDN para detalles del formato.