← Todas las herramientas Code Gen

Convertidor JSON a PHP

Pega JSON y obtén al instante arrays PHP, objetos stdClass o clases PHP 8 tipadas.

0 car.

Tres modos de salida PHP

El modo array asociativo PHP convierte objetos JSON en literales de array PHP usando la sintaxis estándar array() o la sintaxis corta []. Es la salida más simple y no requiere definiciones de clase — ideal para archivos de configuración, fixtures y scripts de una sola vez.

El modo stdClass usa el estilo de salida de json_decode($json), representando cada objeto JSON como un objeto PHP anónimo con propiedades públicas. Esto refleja lo que devuelve el json_decode() integrado de PHP cuando el segundo argumento es false (el valor predeterminado).

El modo clase tipada genera definiciones de clase PHP con propiedades públicas tipadas usando los tipos union y nullable de PHP 8+. Cada objeto JSON se convierte en una clase con un constructor que establece todas las propiedades, fuertemente tipado con int, float, string, bool, array y ?T para campos nullable.

Sistema de tipos PHP 8 y convenciones de nomenclatura

PHP 8 introdujo la promoción de propiedades en el constructor y los tipos union. El generador usa la promoción de constructor por defecto — propiedades declaradas directamente en la firma del constructor con visibilidad y tipo — reduciendo el código repetitivo al mínimo.

Las claves JSON se convierten a identificadores PHP válidos siguiendo la convención camelCase. Las claves que comienzan con dígitos se prefijan con guión bajo. Las palabras reservadas PHP usadas como nombres de propiedad también se prefijan con guión bajo y un comentario doc registra la clave original.

Para propiedades nullable el generador emite ?string, ?int, ?float, ?bool y ?NombreClase. Los tipos union de PHP 8.0+ (string|null, int|float) se usan cuando un campo contiene tipos mixtos entre los elementos de un array.

Flujos de trabajo de Laravel y Symfony

Los desarrolladores Laravel frecuentemente necesitan definir atributos de modelos Eloquent desde formas de respuesta de API. La salida de clase tipada te da una clase PHP tipada que refleja el contrato de API, útil como DTO entre clases de servicio.

Los desarrolladores Symfony que usan el componente Serializer o API Platform pueden integrar directamente las clases tipadas generadas en su proyecto. Las clases son compatibles con el componente PropertyAccess de Symfony.

Los desarrolladores PHP que construyen plugins de WordPress, módulos de Drupal o scripts independientes frecuentemente necesitan deserializar respuestas JSON de API. La salida de array es la integración más rápida, sin autoloading requerido.

FAQ

¿Se envían mis datos a un servidor?

No. Todo el procesamiento se ejecuta completamente en tu navegador. Tu JSON nunca sale de tu dispositivo.

¿Qué modo de salida debo elegir?

Usa la salida de array para scripts rápidos y archivos de configuración. Usa stdClass si tu código ya usa json_decode(). Usa clases tipadas para bases de código PHP 8 mantenibles y con seguridad de tipos.

¿Cómo se manejan las palabras reservadas de PHP como nombres de propiedad?

Las palabras reservadas PHP como "class", "match", "fn", "list" y "array" se prefijan con guión bajo (ej. $_class) y un comentario doc preserva la clave JSON original.

¿Se admite la sintaxis PHP 7?

Sí. Un modo de compatibilidad PHP 7 reemplaza los tipos union con tipos nullable (?T) y la promoción de constructor con declaraciones de propiedades explícitas, produciendo código compatible con PHP 7.4+.

¿Puedo generar modelos Eloquent de Laravel?

La salida de clase tipada proporciona la estructura de propiedades. Para modelos Eloquent completos añadirías extends Model y un array $fillable. Un modo stub de Laravel está disponible para añadir estos elementos automáticamente.

Herramientas relacionadas