Come leggere e stampare Pretty JSON con PHP

Come leggere e stampare Pretty JSON con PHP
JSON è un popolare formato di archiviazione dei dati per scambiare dati tra server e browser. Deriva da JavaScript e supportato da molti linguaggi di programmazione standard. È un formato di file leggibile dall'uomo che chiunque capisce rapidamente se stampa con una formattazione corretta. JSON Data Stampes in una singola riga quando non viene applicata alcuna formattazione. Ma questo tipo di output non è più facile da capire. Quindi, i dati JSON formattati sono molto importanti affinché il lettore comprenda la struttura dei dati. Pretty Print viene utilizzato per formattare i dati JSON. I dati JSON possono essere rappresentati in una forma più leggibile per gli umani utilizzando piuttosto stampa. Esistono molti modi per applicare una bella stampa nei dati JSON. I modi per applicare JSON Pretty-Printing usando PHP sono mostrati in questo tutorial attraverso vari esempi.

Prerequisiti:

Gli esempi di questo tutorial sono stati controllati per PHP versione 8+. Quindi, devi installare PHP 8.0 e un server Apache prima di praticare gli esempi di questo tutorial.

Esempio 1: stampa JSON senza formattazione

JSON_ENCODE () La funzione di PHP viene utilizzata per analizzare qualsiasi dati JSON. Crea un file PHP con il seguente script per leggere un semplice dati JSON e stampare l'output. Qui, è stato dichiarato un array associativo per generare i dati JSON. Non viene applicata alcuna formattazione per i dati JSON nello script.Pertanto, i dati JSON saranno stampati in una singola riga.

// dichiara l'array
$ courses = array ("module-1" => "html", "module-2" => "javascript", "module-3" => "css3", "module-4" => "php");
// stampa l'array in un semplice formato JSON
echojson_encode ($ corsi);
?>

Produzione:

Verrà visualizzato il seguente output dopo aver eseguito lo script precedente dal browser:

Esempio 2: Stampa JSON usando JSON_pretty_print e header ()

PHP ha un'opzione denominata "JSON_pretty_print" usato con JSON_ENCODE () Funzione per stampare i dati JSON con un allineamento corretto e un formato particolare. Crea un file PHP con il seguente script. Qui, il Json_pretty_print L'opzione è stata utilizzata per stampare i dati JSON. L'intestazione () La funzione viene utilizzata qui per informare il browser sul contenuto del file. Nessuna formattazione verrà applicata senza questa funzione.

// dichiara l'array
$ courses = array ("module-1" => "html", "module-2" => "javascript", "module-3" => "css3", "module-4" => "php");
// Notifica al browser il tipo di file utilizzando la funzione di intestazione
header ('Content-type: text/javascript');
// stampa l'array in un semplice formato JSON
echojson_encode ($ corsi, json_pretty_print);
?>

Produzione:

Verrà visualizzato il seguente output dopo aver eseguito lo script precedente dal browser. Un carattere e un allineamento specifici sono stati applicati qui:

Esempio 3: stampa JSON usando JSON_pretty_print e

 etichetta

La formattazione applicata nell'esempio precedente può essere eseguita utilizzando "<pre>"Tag al posto di intestazione() funzione. Crea un file PHP con il seguente script. In questo esempio, l'inizio "

" Il tag viene utilizzato prima di generare dati JSON.

$ data_arr = array ('robin nixon' => 'apprendimento php, mysql e javascript', 'jon duckett' => 'html & css: progetta e build siti Web', 'rob foster' => 'codeigniter 2 book da cucina' ;
?>

echo json_encode ($ data_arr, json_pretty_print);
?>

Produzione:

Verrà visualizzato il seguente output dopo aver eseguito lo script precedente dal browser. L'output sembra simile all'esempio precedente, come mostrato di seguito.

Esempio 4: Stampa JSON usando JSON_pretty_print e funzione personalizzata

I dati JSON formattati vengono stampati utilizzando il Json_pretty_print opzione e

 tag negli esempi precedenti. Ma se si desidera stampare i dati JSON con il formato personalizzato, è meglio utilizzare la funzione definita dall'utente di PHP. Questo esempio mostra come è possibile applicare CSS nei dati JSON utilizzando PHP. Crea un file PHP con il seguente script. In questo esempio sono stati utilizzati un ampio dati JSON che viene archiviato nella variabile, $ dati. Una funzione definita dall'utente, Pretty_print () è stato utilizzato nel codice per formattare i dati JSON. Questa funzione ha un argomento che è stato utilizzato per passare i dati JSON. UN per Loop è stato utilizzato per analizzare i dati JSON e applicare la formattazione prima di stampare i dati.

// Definisci un grande dati JSON
$ data = '"quiz bank": "computer": "q1": "domanda": "Chi è l'inventore del computer?"," Opzioni ": [" Thomas Alva Edison "," Charlesbabbage "," Blaise Pascal "," Philo Farnsworth "]," Risposta ":" Charles Babbage ", " Q2 ": " Domanda ":" che Di quanto segue è un dispositivo di input?"," opzioni ": [" stampante "," scanner "," monitor "," tastiera "]," risposta ":" tastiera "," php ": " q1 ": " domanda ":" Cosa Il tipo di linguaggio è PHP?"," Opzioni ": [" lingua di alto livello "," lingua di basso livello "," scriptinglanguage "," linguaggio assembly "]," risposta ":" lingua di scripting "," q2 ": " domanda ":" Cosa è la forma completa di PHP?"," Opzioni ": [" preprocessore ipertext "," pacchetto home personale "," elaborazione ipertestuale "," pagina perdonale html "]," risposta ":" preprocessore ipertext " ';
// Chiama la funzione personalizzata per la formattazione dei dati JSON
echopretty_print ($ dati);
// Dichiara la funzione personalizzata per la formattazione
functingpretty_print ($ json_data)

// Inizializza la variabile per l'aggiunta dello spazio
$ spazio = 0;
$ flag = false;
// usando
 tagga l'allineamento e carattere in formatta 
eco"
";
// loop per iterating i dati JSON completi
per ($ counter = 0; $ counter
// controllando la seconda e la terza staffa
if ($ json_data [$ counter] == '' || $ JSON_DATA [$ Counter] == ']' ')

$ Space--;
echo "\ n";
echostr_repeat (", ($ spazio*2));

// Verifica la doppia citazione (“) e la virgola (,)
if ($ json_data [$ counter] == '"' && ($ JSON_DATA [$ Counter-1] == ',' || $ JSON_DATA [$ Counter-2] == ','))

echo "\ n";
echostr_repeat (", ($ spazio*2));

if ($ JSON_DATA [$ Counter] == '"' && !$ bandiera)

if ($ JSON_DATA [$ Counter-1] == ':' || $ JSON_DATA [$ Counter-2] == ':')
// Aggiungi formattazione per domande e risposte
eco'';
altro
// Aggiungi formattazione per le opzioni di risposta
eco'';

echo $ json_data [$ counter];
// Controllo delle condizioni per l'aggiunta del tag di span di chiusura
if ($ json_data [$ counter] == '"' && $ flag)
eco'';
if ($ json_data [$ counter] == '"'
$ flag = !$ FLAG;
// controllando le parti di inizio secondo e terzo
if ($ json_data [$ counter] == '' || $ JSON_DATA [$ Counter] == '[')

$ Space ++;
echo "\ n";
echostr_repeat (", ($ spazio*2));


eco"
";

?>

Produzione:

Verrà visualizzato il seguente output dopo aver eseguito lo script precedente dal browser. Qui, ogni domanda e risposta dei dati JSON è stata stampata blu colore e grassetto formato e un'altra parte è stata stampata con rosso colore:

Esempio 5: Stampa JSON usando JSON_ENCODE () e JSON_DECODE ()

Crea un file PHP con il seguente script per conoscere il modo di stampare i dati JSON utilizzando le funzioni JSON_ENCODE () e JSON_DECODE ().

// Definisci i dati JSON in una variabile
$ JSONData = '"11897": "Megha Hossain", "11564": "Abir Hasan", "11234": "Joya Ahmed"';
// codifica il valore JSON
$ decoded_data = json_decode ($ jsondata);
header ('Content-type: text/javascript');
// Stampa i dati JSON dopo la decodifica
Echo "L'output dei dati JSON: \ n";
echo json_encode ($ decoded_data, json_pretty_print);
?>

Produzione:

Verrà visualizzato il seguente output dopo aver eseguito lo script precedente dal browser:

Esempio 6: stampare il contenuto di un file JSON utilizzando JSON_DECODE ()

Negli esempi precedenti, i dati JSON sono stati dichiarati all'interno dello script PHP. Ma il contenuto di un file JSON può essere analizzato usando lo script PHP. Crea un file JSON chiamato studenti.JSON Con il seguente contenuto:

studenti.JSON
[

"ID": "0111897",
"Nome": "Walliur Rahman",
"Dipartimento": "CSE",
"Batch": "30 °"
,

"Id": "0111456",
"Nome": "Minhazkazi",
"Dipartimento": "CSE",
"Batch": "30 °"
,

"ID": "0111897",
"Nome": "Akramasuchi",
"Dipartimento": "CSE",
"Batch": "30 °"

"

Crea un file PHP con il seguente script per leggere il studenti.JSON file utilizzando il file_get_contents () E json_decode () funzioni. Successivamente, il per ciascuno Loop è stato utilizzato per stampare i dati JSON in modo formattato.

// Leggi il contenuto di un file JSON
$ studenti = file_get_contents ('Students.json ');
// decodifica i dati JSON in un array
$ decoded_data = json_decode ($ studenti, true);
eco "Nome ID Batch di partenza
";
// stampa i dati JSON
foreach ($ decoded_data come $ studente)
$ Id = $ studente ['id'];
$ name = $ studente ['name'];
$ dipartimento = $ studente ['dipartimento'];
$ batch = $ studente ['batch'];
echo "$ id $ nome $ dipartimento $ batch
";

?>

Produzione:

Verrà visualizzato il seguente output dopo aver eseguito lo script precedente dal browser:

Esempio 7: lettura del file JSON di valori chiave casuali

È possibile accedere al contenuto del file JSON in base al valore chiave ed è richiesto quando il file JSON contiene chiavi casuali. Crea un file JSON chiamato Randomkey.JSON con i seguenti contenuti:

Randomkey.JSON

"7856":
"Nome": "Mobile",
"Brand": "Samaung",
"Modello": "J4",
"Prezzo": 500
,
"4320":
"Nome": "Laptop",
"Brand": "HP",
"Modello": "Padiglione 15",
"Prezzo": 1000
,
"9067":
"Nome": "Tablet",
"Brand": "Asus",
"Modello": "CT100PA",
"Prezzo": 200
,
"1675":
"nome": "desktop",
"Brand": "Dell",
"Modello": "Nessuno",
"Prezzo": 700

Crea un file PHP con il seguente script per leggere il Randomkey.JSON file utilizzando il file_get_contents () E json_decode () funzioni. Successivamente, il per ciascuno Loop è stato utilizzato per cercare particolari informazioni sul prodotto in base al valore di ricerca indicato nel parametro query.

// Leggi il file JSON
$ randomKey = file_get_contents ('randomkey.json ');
// Inizializza la variabile
$ trovato = false;
// converti la stringa JSON nell'array
$ decoded_json = json_decode ($ randomkey, true);
// Leggi il valore di ricerca dall'URL
if (ISSET ($ _ get ['s'])
$ search_product = $ _get ['s'];
altro

echo "niente da cercare";
Uscita;

// itera il valore JSON e cerca nel marchio
foreach ($ decoded_jsonas $ k => $ v)
$ Brand = $ decoded_json [$ k] ["marchio"];
if ($ brand == $ search_product)

$ name = $ decoded_json [$ k] ["nome"];
$ modello = $ decoded_json [$ k] ["modello"];
$ price = $ decoded_json [$ k] ["prezzo"];
$ trovato = vero;
Echo "Nome prodotto: $ Nome
Marchio: $ marchio
Modello: Modello $
Prezzo: $ prezzo ";


// Stampa messaggio se il valore di ricerca non trovato
if ($ trovato == false)
Echo "Il prodotto non esiste.";
?>

Produzione:

Esegui lo script precedente senza alcun parametro di query:

http: // localhost/phpcode/json7.PHP

Esegui lo script precedente con un valore di parametro di query che esiste nel file JSON:

http: // localhost/phpcode/json7.PHP?s = hp

Esegui lo script precedente con un valore di parametro query che non esiste nel file JSON:

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

Conclusione

In questo tutorial sono stati discussi i diversi modi per stampare i dati JSON formattati utilizzando vari script PHP. Speriamo che gli utenti PHP siano in grado di formattare i dati JSON e generare un ottimo output JSON utilizzando lo script PHP dopo aver praticato gli esempi forniti correttamente. Speriamo che tu abbia trovato questo articolo utile. Controlla gli altri articoli di suggerimento Linux per ulteriori suggerimenti e informazioni.