Acerca de JSON a PHP Online
Pega cualquier objeto JSON y obtén sintaxis válida de array PHP. Maneja objetos anidados, arrays, cadenas (comillas simples), números, booleanos y null.
Preguntas frecuentes
¿Qué es la conversión de JSON a PHP?
La conversión de JSON a PHP transforma un objeto o array JSON en sintaxis de array PHP, produciendo código listo para pegar en un archivo PHP. Las claves JSON se convierten en claves de array, los objetos anidados en arrays anidados y los tipos se mapean a sus equivalentes PHP.
¿Cuál es la diferencia entre json_decode devolviendo un array frente a un objeto?
json_decode($json) devuelve un objeto stdClass por defecto, por lo que accedes a los campos con ->: $obj->nombre. json_decode($json, true) devuelve un array asociativo, por lo que usas corchetes: $arr["nombre"]. La forma de array asociativo es más común en PHP moderno, ya que se compone de forma natural con las funciones de array y evita los problemas de stdClass.
¿Cómo convierto JSON a un array asociativo de PHP usando json_decode?
Pasa true como segundo argumento: $data = json_decode($json, true). Comprueba que json_last_error() === JSON_ERROR_NONE para confirmar que el análisis fue exitoso. Para JSON profundamente anidado, el resultado es un array asociativo anidado; accede con $data["usuario"]["direccion"]["ciudad"].
¿Puedo convertir un array de PHP de vuelta a JSON con json_encode?
Sí: echo json_encode($array, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE). JSON_PRETTY_PRINT añade sangría; JSON_UNESCAPED_UNICODE conserva los caracteres no ASCII sin escapar. Para respuestas de API, omite JSON_PRETTY_PRINT para minimizar el tamaño de la carga útil.
¿Cómo gestiono JSON profundamente anidado en arrays de PHP?
Accede a los valores anidados con corchetes encadenados: $ciudad = $data["usuario"]["direccion"]["ciudad"]. Usa el operador null-coalescing para un acceso seguro: $ciudad = $data["usuario"]["direccion"]["ciudad"] ?? "desconocida". Para acceso profundo complejo, considera la comprobación con array_key_exists() o una biblioteca como adbario/php-dot-notation que admite rutas con notación de punto.
Advertisement300 × 250
Advertisement300 × 250