utf8 recorrer print json_encode php json encode

print - recorrer json php



PHP "bonita impresiĆ³n" json_encode (4)

Posible duplicado:
Pretty-Printing JSON con PHP

Estoy trabajando en un script que crea un archivo JSON. En este momento solo estoy usando json_encode (PHP 5.2.x) para codificar una matriz en salida JSON. Luego imprimo el valor devuelto en un archivo y lo guardo. El problema es que el cliente desea poder abrir estos archivos JSON para facilitar su lectura, por lo que me gustaría agregar saltos de línea e "imprimir bastante" la salida JSON. ¿Alguna idea sobre cómo hacer esto? Mi única otra alternativa que puedo ver es no usar json_encode y simplemente escribir el contenido del archivo manualmente y agregar mis propios saltos de línea para cada línea.

Esto es lo que obtengo:

{"product_name":"prod1","val1":1,"val2":8}

Esto es lo que quiero:

{ "product_name":"prod1", "val1":1, "val2":8 }

Supongo que también podría simplemente reemplazar cada coma con un comando seguido de un / n, y lo mismo para los corchetes ... ¿Pensamientos?


Aquí hay una función para mejorar tu json: pretty_json


Hmmm $array = json_decode($json, true); hará que su cadena sea una matriz que es fácil de imprimir muy bien con print_r($array, true);

Pero si realmente quieres embellecer a tu JSON ... Mira esto


PHP tiene la opción JSON_PRETTY_PRINT desde 5.4.0 (fecha de lanzamiento 01-Mar-2012).

Esto debería hacer el trabajo:

$json = json_decode($string); echo json_encode($json, JSON_PRETTY_PRINT);

Ver http://www.php.net/manual/en/function.json-encode.php

Nota: No olvide repetir "<pre>" antes y </ pre> después, si lo está imprimiendo en HTML;)