php

Hur man läser och skriver ut ganska JSON med PHP

Hur man läser och skriver ut ganska JSON med PHP
JSON är ett populärt datalagringsformat för att utbyta data mellan server och webbläsare. Den härstammar från JavaScript och stöds av många vanliga programmeringsspråk. Det är ett läsbart filformat som lätt kan förstås av någon om det skrivs ut med korrekt formatering. JSON-data skrivs ut på en enda rad när ingen formatering tillämpas. Men den här typen av produktion är inte så lätt att förstå. Så, de formaterade JSON-uppgifterna är mycket viktiga för att förstå läsarens datastruktur. Pretty print används för att formatera JSON-data. JSON-data kan representeras i en mer läsbar form för människor genom att använda vacker utskrift. Det finns många sätt att använda vacker utskrift i JSON-data. Hur du kan använda JSON vacker utskrift med PHP visas i denna handledning med hjälp av olika exempel.

Exempel 1: Skriv ut JSON utan formatering

json_encode () PHP-funktionen används för att analysera alla JSON-data. Skapa en fil med namnet exp1.php med följande kod för att läsa enkla JSON-data och skriva ut utdata. Här förklaras en associerande array för att generera JSON-data. Ingen formatering tillämpas för JSON-data i koden. Så, JSON-data kommer att skrivas ut i en enda rad i JSON-format.

exp1.php

// Förklara matrisen
$ courses = array ("Module-1" => "HTML", "Module-2" => "JavaScript", "Module-3" => "CSS3",
"Module-4" => "PHP");
// Skriv ut matrisen i ett enkelt JSON-format
echo json_encode ($ kurser);
?>

Produktion:

Följande utdata visas efter att filen har körts från webbläsaren.

http: // localhost / json / exp1.php

Exempel 2: Skriv ut JSON med JSON_PRETTY_PRINT-alternativet och rubrik () -funktionen

PHP har ett alternativ som heter 'JSON_PRETTY_PRINT' som används med json_encode () funktion för att skriva ut JSON-data med rätt inriktning och särskilt format. Skapa en fil med namnet exp2.php med följande kod. I koden används samma array i föregående exempel för att se användningen JSON_PRETTY_PRINT alternativ. rubrik() funktionen används här för att informera webbläsaren om filinnehållet. Ingen formatering tillämpas utan den här funktionen.      

exp2.php

// Förklara matrisen
$ courses = array ("Module-1" => "HTML", "Module-2" => "JavaScript", "Module-3" => "CSS3",
"Module-4" => "PHP");
// Meddela webbläsaren om typen av fil med rubrikfunktionen
header ('Content-type: text / javascript');
// Skriv ut matrisen i ett enkelt JSON-format
echo json_encode ($ kurser, JSON_PRETTY_PRINT);
?>

Produktion:

Följande utdata visas efter att filen har körts från webbläsaren. Ett specifikt typsnitt och justering kommer att tillämpas.

http: // localhost / json / exp2.php

Exempel 3: Skriv ut JSON med JSON_PRETTY_PRINT-alternativet och
 märka

Formateringen som används i föregående exempel kan göras med hjälp av 'företaggen istället för rubrik() fungera. Skapa en fil med namnet exp3.php med följande kod. I det här exemplet börjar "pre" taggen används innan JSON-data genereras. Utgången kommer att likna föregående exempel.

exp3.php

$ data_arr = array ('Robin Nixon' => 'Lära sig PHP, MySQL och JavaScript',
'Jon Duckett' => 'HTML & CSS: Design och bygg webbplatser', 'Rob Foster' =>
'CodeIgniter 2 Cookbook');
?>

eko json_encode ($ data_arr, JSON_PRETTY_PRINT);
?>

Produktion:

Följande utdata visas efter att filen har körts från webbläsaren.

http: // localhost / json / exp3.php

Exempel 4: Färgrik JSON-utskrift med den anpassade funktionen

Formaterade JSON-data skrivs ut med JSON_PRETTY_PRINT alternativ för PHP i de föregående exemplen. Men om du vill skriva ut JSON-data med det anpassade formatet är det bättre att använda den användardefinierade funktionen för PHP. Hur du kan använda CSS i JSON-data med PHP visas huvudsakligen i detta exempel. Skapa en PHP-fil med namnet exp4.php med följande kod. En stor JSON-data används i detta exempel som lagras i variabeln, $ data. En användardefinierad funktion, pretty_print () används i koden för att formatera JSON-data. Denna funktion har ett argument som används för att skicka JSON-data. A för loop används i funktionen för att analysera JSON-data och tillämpa olika typer av formatering innan data skrivs ut.

exp4.php

// Definiera stora json-data
$ data = '"frågesportbank": "Dator": "q1": "fråga": "vem är uppfinnaren av
dator?"," options ": [" Thomas Alva Edison "," Charles Babbage "," Blaise Pascal ",
"Philo Farnsworth"], "answer": "Charles Babbage", "q2": "fråga":
"vilket av följande är en inmatningsenhet?"," options ": [" Skrivare "," Skanner ",
"Monitor", "Keyboard"], "answer": "Keyboard", "PHP": "q1": "question":
"Vilken typ av språk är PHP?"," options ": [" High Level Language "," Low level
Språk "," Scripting Language "," Assembly Language "]," answer ":" Scripting Language ",
"q2": "fråga": "Vad är den fullständiga formen av PHP?"," options ": [" Hypertext Preprocessor ",
"Personal Home Package", "Hypertext Processor", "Perdonal HTML Page"], "answer":
"Hypertext Preprocessor" ';
// ring anpassad funktion för formatering av JSON-data
echo pretty_print ($ data);
// Förklara den anpassade funktionen för formatering
funktion pretty_print ($ json_data)

// Initiera variabel för att lägga till utrymme
$ space = 0;
$ flagga = falsk;
//Använder sig av
 tagg för att formatera justering och typsnitt
eko "
";
// loop för iterering av fullständiga json-data
för ($ counter = 0; $ counter
// Kontrollerar slutande andra och tredje parentes
if ($ json_data [$ counter] == '' || $ json_data [$ counter] == ']')

$ space--;
eko "\ n";
echo str_repeat (", ($ space * 2));

 
// Kontrollerar dubbelt citat (“) och komma (,)
om ($ json_data [$ counter] == '"' && ($ json_data [$ counter-1] == ',' ||
$ json_data [$ counter-2] == ','))

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

if ($ json_data [$ counter] == '"' && !$ flagga)

if ($ json_data [$ counter-1] == ':' || $ json_data [$ counter-2] == ':')
// Lägg till formatering för fråga och svar
eko '';
annan
// Lägg till formatering för svarsalternativ
eko '';

echo $ json_data [$ counter];
// Kontrollerar villkor för att lägga till stängningsspänntagg
if ($ json_data [$ counter] == '"' && $ $ flagga)
eko '
';
if ($ json_data [$ counter] == '"')
$ flagga = !$ flagga;
// Kontroll av start andra och tredje parentes
if ($ json_data [$ counter] == '' || $ json_data [$ counter] == '[')

$ space ++;
eko "\ n";
echo str_repeat (", ($ space * 2));


eko "
";

?>

Produktion:

Följande utdata visas efter att filen har körts från webbläsaren. Här kommer varje fråga och svar på JSON-data att skrivas ut med blå färg och djärv format och en annan del kommer att skrivas ut med röd Färg.

http: // localhost / json / exp4.php

Slutsats

Hur du kan skriva ut formaterade JSON-data med hjälp av olika PHP-alternativ försöks visa i den här artikeln. Hoppas, läsaren kommer att kunna använda PHP för att formatera JSON-data och generera vacker JSON-utdata efter att ha övat ovanstående exempel ordentligt.

Hur man använder AutoKey för att automatisera Linux-spel
AutoKey är ett verktyg för desktopautomatisering för Linux och X11, programmerat i Python 3, GTK och Qt. Med hjälp av dess skript och MACRO-funktional...
Hur man visar FPS-räknare i Linux-spel
Linux-spel fick ett stort tryck när Valve tillkännagav Linux-stöd för Steam-klient och deras spel 2012. Sedan dess har många AAA- och indiespel tagit ...
Hur man laddar ner och spelar Sid Meier's Civilization VI på Linux
Introduktion till spelet Civilization 6 är ett modernt intag av det klassiska konceptet som introducerades i serien Age of Empires-spel. Idén var gans...