Cómo leer e imprimir Pretty Json con PHP

Cómo leer e imprimir Pretty Json con PHP
JSON es un formato de almacenamiento de datos popular para intercambiar datos entre el servidor y el navegador. Se deriva de JavaScript y es compatible con muchos lenguajes de programación estándar. Es un formato de archivo legible por humanos que cualquiera entiende rápidamente si se imprime con el formato adecuado. Los datos de JSON se imprimen en una sola línea cuando no se aplica ningún formato. Pero este tipo de salida no es más fácil de entender. Por lo tanto, los datos JSON formateados son muy importantes para que el lector comprenda la estructura de los datos. Pretty Print se usa para formatear los datos JSON. Los datos JSON se pueden representar en una forma más legible para los humanos mediante la impresión bonita. Hay muchas formas de aplicar una impresión bonita en los datos JSON. Las formas de aplicar JSON bastante impreso usando PHP se muestran en este tutorial a través de varios ejemplos.

Prerrequisitos:

Los ejemplos de este tutorial han sido verificados para la versión 8+. Entonces, debes instalar Php 8.0 y un servidor Apache antes de practicar los ejemplos de este tutorial.

Ejemplo 1: Imprimir JSON sin formatear

JSON_ENCODE () La función de PHP se utiliza para analizar cualquier datos JSON. Cree un archivo PHP con el siguiente script para leer un simple JSON Data e imprima la salida. Aquí, se ha declarado una matriz asociativa para generar los datos JSON. No se aplica ningún formato para los datos JSON en el script.Por lo tanto, los datos JSON se imprimirán en una sola línea.

// Declarar la matriz
$ cursos = array ("módulo-1" => "html", "módulo-2" => "javascript", "módulo-3" => "css3", "módulo-4" => "php");
// Imprima la matriz en un formato JSON simple
echoJSON_ENCODE ($ cursos);
?>

Producción:

La siguiente salida aparecerá después de ejecutar el script anterior desde el navegador:

Ejemplo 2: Imprima JSON usando json_pretty_print y encabezado ()

PHP tiene una opción nombrada "Json_pretty_print" usado con JSON_ENCODE () función para imprimir datos JSON con una alineación adecuada y formato particular. Cree un archivo PHP con el siguiente script. Aquí el Json_pretty_print La opción se ha utilizado para imprimir los datos JSON. El encabezado () La función se usa aquí para informar al navegador sobre el contenido del archivo. No se aplicará ningún formato sin esta función.

// Declarar la matriz
$ cursos = array ("módulo-1" => "html", "módulo-2" => "javascript", "módulo-3" => "css3", "módulo-4" => "php");
// notifica al navegador sobre el tipo de archivo usando la función de encabezado
encabezado ('Content-type: text/javaScript');
// Imprima la matriz en un formato JSON simple
echoJSON_ENCODE ($ cursos, json_pretty_print);
?>

Producción:

La siguiente salida aparecerá después de ejecutar el script anterior desde el navegador. Aquí se han aplicado una fuente y alineación específicas:

Ejemplo 3: Imprima JSON usando 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. Cree un archivo PHP con el siguiente script. En este ejemplo, el inicio "

" La etiqueta se usa antes de generar datos JSON.

$ data_arr = Array ('Robin Nixon' => 'Learning Php, MySQL y JavaScript', 'Jon Duckett' => 'Html & CSS: Diseñe y construya sitios web', 'Rob Foster' => 'CODELIGER 2 Cookbook') ;
?>

echo json_encode ($ data_arr, json_pretty_print);
?>

Producción:

La siguiente salida aparecerá después de ejecutar el script anterior desde el navegador. La salida se ve similar al ejemplo anterior, como se muestra a continuación.

Ejemplo 4: Imprima JSON usando json_pretty_print y función personalizada

Los datos JSON formateados se imprimen utilizando el Json_pretty_print opción y el

 Etiqueta 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. Este ejemplo muestra cómo puede aplicar CSS en datos JSON utilizando PHP. Cree un archivo PHP con el siguiente script. Se han utilizado un extenso datos JSON en este ejemplo que se almacena en la variable, $ datos. Una función definida por el usuario, Pretty_print () se ha utilizado en el código para formatear los datos JSON. Esta función tiene un argumento que se ha utilizado para pasar los datos de JSON. A para El bucle se ha utilizado para analizar los datos JSON y aplicar el formato antes de imprimir los datos.

// Definir un gran datos JSON
$ data = '"quiz bank": "computadora": "q1": "pregunta": "Quién es el inventor de la computadora?"," Opciones ": [" Thomas Alva Edison "," Charlesbabbage "," Blaise Pascal "," Philo Farnsworth "]," Respuesta ":" Charles Babbage ", " Q2 ": " Pregunta ":" de lo siguiente es un dispositivo de entrada?"," Opciones ": [" Impresora "," escáner "," monitor "," teclado "]," respuesta ":" teclado "," php ": " q1 ": " pregunta ":" qué El tipo de lenguaje es PHP?"," Opciones ": [" lenguaje de alto nivel "," lenguaje de bajo nivel "," secuencia de comandos "," lenguaje de ensamblaje "]," respuesta ":" lenguaje de secuencias de comandos "," q2 ": " pregunta ":" qué es la forma completa de PHP?"," Opciones ": [" Preprocesador de hipertexto "," Paquete de inicio personal "," Procesador de hipertexto "," Página de html perdonal "]," respuesta ":" Preprocesador de hipertexto " ';
// Llamar a la función personalizada para formatear datos JSON
ecopretty_print ($ data);
// declarar la función personalizada para formatear
functionpretty_print ($ json_data)

// Inicializar variable para agregar espacio
$ espacio = 0;
$ flag = false;
//Usando
 Etiqueta para formatear alineación y fuente 
eco"
";
// bucle para iterar los datos completos de JSON
para ($ contador = 0; $ contador
// verificación de la segunda y tercera las pareces
if ($ json_data [$ contador] == '' || $ json_data [$ contador] == ']')

$ espacio--;
echo "\ n";
ecostr_repeat (", ($ space*2));

// verificar la cita doble (") y la coma (,)
if ($ json_data [$ contador] == '"' && ($ json_data [$ contador-1] == ',' || $ json_data [$ contra-2] == ','))

echo "\ n";
ecostr_repeat (", ($ space*2));

if ($ json_data [$ contador] == '"' && !$ bandera)

if ($ json_data [$ contador-1] == ':' || $ json_data [$ contra-2] == ':')
// Agregar formato para la pregunta y la respuesta
eco'';
demás
// Agregar formateo para opciones de respuesta
eco'';

echo $ json_data [$ contador];
// Condiciones de comprobación para agregar etiqueta de cierre de cierre
if ($ json_data [$ contador] == '"' && $ flag)
eco'';
if ($ json_data [$ contador] == '"')
$ bandera = !$ bandera;
// Verificación inicial El segundo y tercer soporte
if ($ json_data [$ contador] == '' || $ json_data [$ contador] == '[')

$ Space ++;
echo "\ n";
ecostr_repeat (", ($ space*2));


eco"
";

?>

Producción:

La siguiente salida aparecerá después de ejecutar el script anterior desde el navegador. Aquí, cada pregunta y respuesta de los datos JSON se ha imprimido con azul color y atrevido formato, y otra parte se ha impreso con rojo color:

Ejemplo 5: Imprima JSON usando JSON_ENCODE () y JSON_DECODE ()

Cree un archivo PHP con el siguiente script para saber la forma de imprimir los datos JSON utilizando las funciones JSON_ENCODE () y JSON_DECODE ().

// Defina los datos de JSON en una variable
$ jSondata = '"11897": "Megha Hossain", "11564": "Abir Hasan", "11234": "Joya Ahmed"';
// codifica el valor JSON
$ decoded_data = json_decode ($ jsondata);
encabezado ('Content-type: text/javaScript');
// imprime los datos JSON después de la decodificación
echo "La salida de los datos JSON: \ n";
echo json_encode ($ decoded_data, json_pretty_print);
?>

Producción:

La siguiente salida aparecerá después de ejecutar el script anterior desde el navegador:

Ejemplo 6: Imprima el contenido de un archivo JSON usando JSON_DECODE ()

En los ejemplos anteriores, los datos JSON se han declarado dentro del script PHP. Pero el contenido de un archivo JSON se puede analizar utilizando el script PHP. Crea un archivo JSON llamado estudiantes.json Con el siguiente contenido:

estudiantes.json
[

"ID": "0111897",
"Nombre": "Walliur Rahman",
"Departamento": "CSE",
"Batch": "30th"
,

"ID": "0111456",
"Nombre": "Minhazkazi",
"Departamento": "CSE",
"Batch": "30th"
,

"ID": "0111897",
"Nombre": "Akramasouchi",
"Departamento": "CSE",
"Batch": "30th"

]

Crear un archivo php con el siguiente script para leer el estudiantes.json Archivo utilizando el file_get_contents () y json_decode () funciones. A continuación, el para cada El bucle se ha utilizado para imprimir los datos JSON de forma formateada.

// Lea el contenido de un archivo JSON
$ Students = file_get_contents ('Estudiantes.json ');
// decodificar los datos de JSON en una matriz
$ decoded_data = json_decode ($ students, true);
eco "Nombre de identificación lote de partidos
";
// Imprima los datos JSON
foreach ($ decoded_data como $ estudiante)
$ Id = $ student ['id'];
$ name = $ student ['name'];
$ departamento = $ estudiante ['departamento'];
$ Batch = $ Student ['Batch'];
echo "$ id $ name $ department $ batch
";

?>

Producción:

La siguiente salida aparecerá después de ejecutar el script anterior desde el navegador:

Ejemplo 7: Lectura del archivo JSON de valores de claves aleatorios

Se puede acceder al contenido del archivo JSON en función del valor de clave y se requiere cuando el archivo JSON contiene claves aleatorias. Crear un archivo JSON llamado RandomKey.JSON con el siguiente contenido:

lora aleatoria.json

"7856":
"Nombre": "Móvil",
"Brand": "Samaung",
"Modelo": "J4",
"Precio": 500
,
"4320":
"Nombre": "laptop",
"Brand": "HP",
"Modelo": "Pabellón 15",
"Precio": 1000
,
"9067":
"Nombre": "Tableta",
"marca": "asus",
"Modelo": "CT100PA",
"Precio": 200
,
"1675":
"Nombre": "Escritorio",
"Brand": "Dell",
"Modelo": "Ninguno",
"Precio": 700

Crear un archivo php con el siguiente script para leer el lora aleatoria.json Archivo utilizando el file_get_contents () y json_decode () funciones. A continuación, el para cada El bucle se ha utilizado para buscar información particular del producto en función del valor de búsqueda dado en el parámetro de consulta.

// Lee el archivo JSON
$ RandomKey = File_Get_Contents ('RandomKey.json ');
// Inicializar la variable
$ encontrado = falso;
// Convertir la cadena JSON en la matriz
$ decoded_json = json_decode ($ randomkey, true);
// Lea el valor de búsqueda de la URL
if (isset ($ _ get ['s']))
$ search_product = $ _get ['s'];
demás

hacer eco "nada para buscar";
salida;

// iterar el valor JSON y buscar la marca
foreach ($ decoded_jsonas $ k => $ v)
$ marca = $ decoded_json [$ k] ["marca"];
if ($ brand == $ search_product)

$ name = $ decoded_json [$ k] ["nombre"];
$ modelo = $ decoded_json [$ k] ["modelo"];
$ precio = $ decoded_json [$ k] ["precio"];
$ encontrado = verdadero;
Echo "Nombre del producto: $ Nombre
Marca: $ marca
Modelo: $ modelo
Precio: $ precio ";


// Imprimir mensaje si el valor de búsqueda no se encuentra
if ($ encontrado == falso)
El producto de eco "no existe.";
?>

Producción:

Ejecute el script anterior sin ningún parámetro de consulta:

http: // localhost/phpcode/json7.php

Ejecute el script anterior con un valor de parámetro de consulta que existe en el archivo JSON:

http: // localhost/phpcode/json7.php?S = HP

Ejecute el script anterior con un valor de parámetro de consulta que no existe en el archivo JSON:

http: // localhost/phpcode/json7.php?S = Del

Conclusión

Las diferentes formas de imprimir datos JSON formateados utilizando varios scripts PHP se han discutido en este tutorial. Con suerte, los usuarios de PHP podrán formatear datos JSON y generar una salida de JSON bonita utilizando el script PHP después de practicar los ejemplos proporcionados correctamente. Esperamos que hayas encontrado este artículo útil. Consulte los otros artículos de Sugerencia de Linux para obtener más consejos e información.