Ejemplo 1: imprimir JSON sin formatear
json_encode () La función de PHP se utiliza para analizar cualquier dato JSON. Crea un archivo llamado exp1.php con el siguiente código para leer datos JSON simples e imprimir la salida. Aquí, se declara una matriz asociativa para generar datos JSON. No se aplica formato a los datos JSON en el código. Entonces, los datos JSON se imprimirán en una sola línea en formato JSON.
exp1.php
// Declara la matriz$ cursos = matriz ("Módulo-1" => "HTML", "Módulo-2" => "JavaScript", "Módulo-3" => "CSS3",
"Módulo-4" => "PHP");
// Imprime la matriz en un formato JSON simple
echo json_encode ($ cursos);
?>
Producción:
La siguiente salida aparecerá después de ejecutar el archivo desde el navegador.
http: // localhost / json / exp1.php
Ejemplo-2: Imprimir JSON usando la opción JSON_PRETTY_PRINT y la función header ()
PHP tiene una opción llamada 'JSON_PRETTY_PRINT' que se usa con json_encode () función para imprimir datos JSON con la alineación adecuada y un formato particular. Crea un archivo llamado exp2.php con el siguiente código. En el código, se usa la misma matriz del ejemplo anterior para ver el uso JSON_PRETTY_PRINT opción. encabezamiento() La función se utiliza aquí para informar al navegador sobre el contenido del archivo. No se aplicará ningún formato sin esta función.
exp2.php
// Declara la matriz$ cursos = matriz ("Módulo-1" => "HTML", "Módulo-2" => "JavaScript", "Módulo-3" => "CSS3",
"Módulo-4" => "PHP");
// Notificar al navegador sobre el tipo de archivo usando la función de encabezado
encabezado ('Tipo de contenido: texto / javascript');
// Imprime la matriz en un formato JSON simple
echo json_encode ($ cursos, JSON_PRETTY_PRINT);
?>
Producción:
La siguiente salida aparecerá después de ejecutar el archivo desde el navegador. Se aplicará una fuente y una alineación específicas.
http: // localhost / json / exp2.php
Ejemplo-3: Imprima JSON usando la opción JSON_PRETTY_PRINT y etiqueta
El formato que se aplica en el ejemplo anterior se puede hacer usando 'pre'etiqueta en lugar de encabezamiento() función. Crea un archivo llamado exp3.php con el siguiente código. En este ejemplo, comenzando el 'pre' la etiqueta se usa antes de generar datos JSON. La salida será similar al ejemplo anterior.
exp3.php
$ data_arr = array ('Robin Nixon' => 'Aprendiendo PHP, MySQL y JavaScript','Jon Duckett' => 'HTML y CSS: Diseño y creación de sitios web', 'Rob Foster' =>
'Libro de cocina CodeIgniter 2');
?>
echo json_encode ($ data_arr, JSON_PRETTY_PRINT);
?>
Producción:
La siguiente salida aparecerá después de ejecutar el archivo desde el navegador.
http: // localhost / json / exp3.php
Ejemplo 4: Impresión JSON colorida con la función personalizada
Los datos JSON formateados se imprimen utilizando JSON_PRETTY_PRINT opción de PHP en los ejemplos anteriores. Pero si desea imprimir datos JSON con el formato personalizado, es mejor usar la función definida por el usuario de PHP. En este ejemplo se muestra principalmente cómo puede aplicar CSS en datos JSON usando PHP. Crea un archivo PHP llamado exp4.php con el siguiente código. En este ejemplo, se utilizan datos JSON grandes que se almacenan en la variable, $ datos. Una función definida por el usuario, pretty_print () se utiliza en el código para formatear los datos JSON. Esta función tiene un argumento que solía pasar los datos JSON. A por El bucle se utiliza en la función para analizar los datos JSON y aplicar formato de tipos diferentes antes de imprimir los datos.
exp4.php
// Definir un gran dato json$ data = '"banco de pruebas": "Computadora": "q1": "pregunta": "quién es el inventor de
ordenador?"," opciones ": [" Thomas Alva Edison "," Charles Babbage "," Blaise Pascal ",
"Philo Farnsworth"], "respuesta": "Charles Babbage", "q2": "pregunta":
"¿Cuál de los siguientes es un dispositivo de entrada??"," opciones ": [" Impresora "," Escáner ",
"Monitor", "Teclado"], "respuesta": "Teclado", "PHP": "q1": "pregunta":
"¿Qué tipo de lenguaje es PHP??"," opciones ": [" Idioma de alto nivel "," Nivel bajo
Idioma "," Lenguaje de secuencias de comandos "," Lenguaje ensamblador "]," respuesta ":" Lenguaje de secuencias de comandos ",
"q2": "question": "¿Cuál es la forma completa de PHP??"," opciones ": [" Preprocesador de hipertexto ",
"Paquete de inicio personal", "Procesador de hipertexto", "Página HTML personal"], "respuesta":
"Preprocesador de hipertexto" ';
// llamar a la función personalizada para formatear datos json
echo pretty_print ($ datos);
// Declara la función personalizada para formatear
función pretty_print ($ json_data)
// Inicializar variable para agregar espacio
$ espacio = 0;
$ bandera = falso;
//Utilizando
etiqueta para formatear la alineación y la fuente
eco "";";
// bucle para iterar los datos json completos
para ($ contador = 0; $ contador
// Comprobando el segundo y tercer paréntesis finales
if ($ json_data [$ contador] == '' || $ json_data [$ contador] == ']')
$ espacio--;
echo "\ n";
echo str_repeat (", ($ espacio * 2));
// Comprobación de comillas dobles (“) y coma (,)
if ($ json_data [$ contador] == '"' && ($ json_data [$ contador-1] == ',' ||
$ json_data [$ contador-2] == ','))
echo "\ n";
echo str_repeat (", ($ espacio * 2));
if ($ json_data [$ contador] == '"' && !$ bandera)
if ($ json_data [$ contador-1] == ':' || $ json_data [$ contador-2] == ':')
// Agregar formato para preguntas y respuestas
eco '';
demás
// Agregar formato para las opciones de respuesta
eco '';
echo $ json_data [$ contador];
// Verificando las condiciones para agregar una etiqueta de tramo de cierre
if ($ json_data [$ contador] == '"' && $ bandera)
eco '';
if ($ json_data [$ contador] == '"')
$ bandera = !$ bandera;
// Comprobando el segundo y tercer paréntesis iniciales
if ($ json_data [$ contador] == '' || $ json_data [$ contador] == '[')
$ espacio ++;
echo "\ n";
echo str_repeat (", ($ espacio * 2));
eco "
?>Producción:
La siguiente salida aparecerá después de ejecutar el archivo desde el navegador. Aquí, cada pregunta y respuesta de los datos JSON se imprimirá con azul color y negrita formato y, otra parte se imprimirá con rojo color.
http: // localhost / json / exp4.php
Conclusión
En este artículo se intenta mostrar cómo puede imprimir datos JSON formateados utilizando varias opciones de PHP. Espero que el lector pueda aplicar PHP para formatear datos JSON y generar una salida JSON bonita después de practicar correctamente los ejemplos anteriores.