Příklad 1: Tisk JSON bez formátování
json_encode () funkce PHP se používá k analýze jakýchkoli dat JSON. Vytvořte soubor s názvem exp1.php s následujícím kódem pro čtení jednoduchých dat JSON a tisk výstupu. Zde je deklarováno asociativní pole ke generování dat JSON. U dat JSON v kódu se nepoužívá žádné formátování. Data JSON budou tedy vytištěna v jednom řádku ve formátu JSON.
exp1.php
// Deklarujte pole$ courses = array ("Module-1" => "HTML", "Module-2" => "JavaScript", "Module-3" => "CSS3",
"Module-4" => "PHP");
// Tisk pole v jednoduchém formátu JSON
echo json_encode ($ kurzy);
?>
Výstup:
Po spuštění souboru z prohlížeče se zobrazí následující výstup.
http: // localhost / json / exp1.php
Příklad 2: Tisk JSON pomocí možnosti JSON_PRETTY_PRINT a funkce header ()
PHP má pojmenovanou možnost „JSON_PRETTY_PRINT“ který se používá s json_encode () funkce pro tisk dat JSON se správným zarovnáním a konkrétním formátem. Vytvořte soubor s názvem exp2.php s následujícím kódem. V kódu se pro zobrazení použití používá stejné pole z předchozího příkladu JSON_PRETTY_PRINT volba. záhlaví () Zde se používá funkce k informování prohlížeče o obsahu souboru. Bez této funkce nebude použito žádné formátování.
exp2.php
// Deklarujte pole$ courses = array ("Module-1" => "HTML", "Module-2" => "JavaScript", "Module-3" => "CSS3",
"Module-4" => "PHP");
// Informovat prohlížeč o typu souboru pomocí funkce záhlaví
header ('Content-type: text / javascript');
// Tisk pole v jednoduchém formátu JSON
echo json_encode ($ courses, JSON_PRETTY_PRINT);
?>
Výstup:
Po spuštění souboru z prohlížeče se zobrazí následující výstup. Bude použito konkrétní písmo a zarovnání.
http: // localhost / json / exp2.php
Příklad 3: Tisk JSON pomocí možnosti JSON_PRETTY_PRINT a štítek
Formátování použité v předchozím příkladu lze provést pomocí 'před"značka namísto záhlaví () funkce. Vytvořte soubor s názvem exp3.php s následujícím kódem. V tomto příkladu začíná „před“ značka se používá před generováním dat JSON. Výstup bude podobný předchozímu příkladu.
exp3.php
$ data_arr = array ('Robin Nixon' => 'Výuka PHP, MySQL a JavaScriptu','Jon Duckett' => 'HTML & CSS: Design and Build Web Sites', 'Rob Foster' =>
„Kuchařská kniha CodeIgniter 2“);
?>
echo json_encode ($ data_arr, JSON_PRETTY_PRINT);
?>
Výstup:
Po spuštění souboru z prohlížeče se zobrazí následující výstup.
http: // localhost / json / exp3.php
Příklad 4: Barevný tisk JSON pomocí vlastní funkce
Formátovaná data JSON se tisknou pomocí JSON_PRETTY_PRINT možnost PHP v předchozích příkladech. Pokud ale chcete tisknout data JSON s vlastním formátem, je lepší použít uživatelsky definovanou funkci PHP. Jak můžete použít CSS v datech JSON pomocí PHP, je ukázáno hlavně v tomto příkladu. Vytvořte soubor PHP s názvem exp4.php s následujícím kódem. V tomto příkladu se používají velká data JSON, která jsou uložena v proměnné, $ data. Uživatelem definovaná funkce, pretty_print () se v kódu používá k formátování dat JSON. Tato funkce má argument, který slouží k předání dat JSON. A pro smyčka se ve funkci používá k analýze dat JSON a použití různých typů formátování před tiskem dat.
exp4.php
// Definujte velká data JSON$ data = '"quiz bank": "Computer": "q1": "question": "kdo je vynálezcem
počítač?"," options ": [" Thomas Alva Edison "," Charles Babbage "," Blaise Pascal ",
"Philo Farnsworth"], "answer": "Charles Babbage", "q2": "otázka":
"které z následujících je vstupní zařízení?"," options ": [" Tiskárna "," Skener ",
"Monitor", "Keyboard"], "answer": "Keyboard", "PHP": "q1": "question":
"Jaký typ jazyka je PHP?"," options ": [" High Level Language "," Low level. "
Jazyk "," Skriptovací jazyk "," Jazyk shromáždění "]," odpověď ":" Skriptovací jazyk ",
"q2": "question": "Jaká je plná forma PHP?"," options ": [" Hypertextový předprocesor ",
„Personal Home Package“, „Hypertext Processor“, „Perdonal HTML Page“], „answer“:
"Hypertextový předprocesor" ';
// volání vlastní funkce pro formátování dat JSON
echo pretty_print ($ data);
// Deklarujte vlastní funkci pro formátování
funkce pretty_print ($ json_data)
// Inicializuje proměnnou pro přidání prostoru
$ mezera = 0;
$ flag = false;
//Použitím
značka pro formátování zarovnání a písma
ozvěna "";";
// smyčka pro iteraci úplných dat JSON
for ($ counter = 0; $ counter
// Kontrola konce druhé a třetí závorky
if ($ json_data [$ counter] == '' || $ json_data [$ counter] == ']')
$ prostor--;
echo "\ n";
echo str_repeat (", ($ mezera * 2));
// Kontrola dvojitých uvozovek (“) a čárky (,)
if ($ json_data [$ counter] == '"' && ($ json_data [$ counter-1] == ',' ||
$ json_data [$ counter-2] == ','))
echo "\ n";
echo str_repeat (", ($ mezera * 2));
if ($ json_data [$ counter] == '"' && !$ vlajka)
if ($ json_data [$ counter-1] == ':' || $ json_data [$ counter-2] == ':')
// Přidejte formátování pro otázku a odpověď
ozvěna '';
jiný
// Přidat formátování pro možnosti odpovědí
ozvěna '';
echo $ json_data [$ counter];
// Kontrola podmínek pro přidání uzavírací značky rozpětí
if ($ json_data [$ counter] == '"' && $ flag)
ozvěna '';
if ($ json_data [$ counter] == '"')
$ vlajka = !$ vlajka;
// Kontrola počáteční a třetí závorky
if ($ json_data [$ counter] == '' || $ json_data [$ counter] == '[')
$ prostor ++;
echo "\ n";
echo str_repeat (", ($ mezera * 2));
ozvěna "
?>Výstup:
Po spuštění souboru z prohlížeče se zobrazí následující výstup. Zde bude vytištěna každá otázka a odpověď na data JSON modrý barva a tučně formátu a další část bude vytištěna Červené barva.
http: // localhost / json / exp4.php
Závěr
V tomto článku se pokusíme ukázat, jak můžete tisknout formátovaná data JSON pomocí různých možností PHP. Doufám, že čtenář bude schopen použít PHP k formátování dat JSON a generování pěkného výstupu JSON po správném procvičení výše uvedených příkladů.