1 pavyzdys: atsispausdinkite JSON be formatavimo
json_encode () PHP funkcija naudojama išanalizuoti visus JSON duomenis. Sukurkite failą pavadinimu exp1.php su šiuo kodu, norėdami perskaityti paprastus JSON duomenis ir atspausdinti išvestį. Čia deklaruojamas asociatyvusis masyvas, skirtas generuoti JSON duomenis. JSON duomenims kode netaikomas joks formatavimas. Taigi, JSON duomenys bus spausdinami viena eilute JSON formatu.
exp1.php
// Deklaruoti masyvą$ kursai = masyvas ("1 modulis" => "HTML", "2 modulis" => "" JavaScript "," 3 modulis "=>" CSS3 ",
"4 modulis" => "PHP");
// Spausdinkite masyvą paprastu JSON formatu
echo json_encode ($ kursai);
?>
Išvestis:
Ši išvestis bus rodoma vykdant failą iš naršyklės.
http: // localhost / json / exp1.php
2 pavyzdys: spausdinkite JSON naudodami parinktį JSON_PRETTY_PRINT ir antraštės () funkciją
PHP turi parinktį, pavadintą „JSON_PRETTY_PRINT“ kuri naudojama su json_encode () funkcija spausdinti JSON duomenis tinkamu lygiavimu ir tam tikru formatu. Sukurkite failą pavadinimu exp2.php su tokiu kodu. Kode naudojamas tas pats ankstesnio pavyzdžio masyvas, kad būtų galima pamatyti naudojimą JSON_PRETTY_PRINT variantą. antraštė () funkcija naudojama naršyklės informavimui apie failo turinį. Be šios funkcijos formatavimas nebus taikomas.
exp2.php
// Deklaruoti masyvą$ kursai = masyvas ("1 modulis" => "HTML", "2 modulis" => "JavaScript", "3 modulis" => "CSS3",
"4 modulis" => "PHP");
// Pranešti naršyklei apie failo tipą naudojant antraštės funkciją
antraštė ('Content-type: text / javascript');
// Spausdinkite masyvą paprastu JSON formatu
echo json_encode ($ kursai, JSON_PRETTY_PRINT);
?>
Išvestis:
Ši išvestis bus rodoma vykdant failą iš naršyklės. Bus taikomas konkretus šriftas ir lygiavimas.
http: // localhost / json / exp2.php
3 pavyzdys: spausdinkite JSON naudodami parinktį JSON_PRETTY_PRINT ir žyma
Ankstesniame pavyzdyje pritaikytą formatavimą galima atlikti naudojantišankstinis'vietoj antraštė () funkcija. Sukurkite failą pavadinimu exp3.php su tokiu kodu. Šiame pavyzdyje pradedant „išankstinis“ žyma naudojama prieš generuojant JSON duomenis. Išvestis bus panaši į ankstesnį pavyzdį.
exp3.php
$ data_arr = array ('Robin Nixon' => 'Mokytis PHP, MySQL ir JavaScript','Jon Duckett' => 'HTML ir CSS: svetainių kūrimas ir kūrimas', 'Rob Foster' =>
„CodeIgniter 2 Cookbook“);
?>
echo json_encode ($ data_arr, JSON_PRETTY_PRINT);
?>
Išvestis:
Ši išvestis pasirodys atlikus failą iš naršyklės.
http: // localhost / json / exp3.php
4 pavyzdys: spalvotas JSON spausdinimas naudojant pasirinktinę funkciją
Suformatuoti JSON duomenys spausdinami naudojant JSON_PRETTY_PRINT PHP parinktis ankstesniuose pavyzdžiuose. Bet jei norite spausdinti JSON duomenis pasirinktiniu formatu, geriau naudoti vartotojo nustatytą PHP funkciją. Kaip galite naudoti CSS JSON duomenyse naudodami PHP, daugiausia parodyta šiame pavyzdyje. Sukurkite PHP failą pavadinimu exp4.php su tokiu kodu. Šiame pavyzdyje naudojami dideli JSON duomenys, kurie saugomi kintamajame, $ duomenų. Vartotojo nustatyta funkcija, pretty_print () yra naudojamas kode JSON duomenims formatuoti. Ši funkcija turi argumentą, kuris buvo naudojamas perduoti JSON duomenis. A dėl ciklas yra naudojamas funkcijoje išanalizuoti JSON duomenis ir prieš spausdinant duomenis pritaikyti skirtingo tipo formatavimą.
exp4.php
// Apibrėžkite didelius „Json“ duomenis$ data = '"viktorinos bankas": "Kompiuteris": "q1": "question": "kas yra išradėjas
kompiuteris?"," variantai ": [" Thomas Alva Edison "," Charles Babbage "," Blaise Pascal ",
"Philo Farnsworth"], "answer": "Charlesas Babbage", "q2": "klausimas":
"kuris iš šių yra įvesties įrenginys?"," options ": [" Printer "," Scanner ",
„Monitorius“, „Klaviatūra“], „atsakymas“: „Klaviatūra“, „PHP“: "q1": "klausimas":
"Kokia kalba yra PHP?"," options ": [" Aukšto lygio kalba "," Žemas lygis
Kalba “,„ scenarijų kalba “,„ surinkimo kalba “],„ atsakymas “:„ scenarijų kalba “,
"q2": "question": "Kokia yra visa PHP forma?"," options ": [" Hypertext Preprocessor ",
„Asmeninis namų paketas“, „Hiperteksto procesorius“, „Perdonal HTML puslapis“], „atsakymas“:
"Hiperteksto pirminis procesorius" ';
// iškviesti pasirinktinę funkciją formuoti „Json“ duomenis
echo pretty_print ($ duomenys);
// Paskelbkite pasirinktinę formatavimo funkciją
funkcija pretty_print ($ json_data)
// Inicializuokite kintamąjį, kad pridėtumėte vietos
$ tarpas = 0;
$ flag = klaidinga;
// Naudojant
žyma formatuoti lygiavimą ir šriftą
aidas "";";
// kilpa, skirta pakartoti visus „Json“ duomenis
for ($ counter = 0; $ counter
// Galinių antrųjų ir trečiųjų skliaustų tikrinimas
jei ($ json_data [$ counter] == '' || $ json_data [$ counter] == ']')
$ space--;
aidas "\ n";
echo str_repeat (", ($ tarpas * 2));
// Tikrinama dviguba citata (“) ir kablelis (,)
if ($ json_data [$ counter] == '"' && ($ json_data [$ counter-1] == ',' ||
$ json_data [$ counter-2] == ','))
aidas "\ n";
echo str_repeat (", ($ tarpas * 2));
jei ($ json_data [$ counter] == '' '&& !$ flag)
jei ($ json_data [$ counter-1] == ':' || $ json_data [$ counter-2] == ':')
// Pridėti klausimo ir atsakymo formatavimą
aidas '";
Kitas
// Pridėti atsakymų parinkčių formatavimą
aidas '";
echo $ json_data [$ skaitiklis];
// Tikrinamos uždaromosios žymos žymos pridėjimo sąlygos
jei ($ json_data [$ counter] == '' '&& $ vėliava)
aidas '";
jei ($ json_data [$ counter] == "" ")
$ flag = !$ vėliava;
// Pradinių antrų ir trečių skliaustų tikrinimas
jei ($ json_data [$ counter] == '' || $ json_data [$ counter] == '[')
$ tarpas ++;
aidas "\ n";
echo str_repeat (", ($ tarpas * 2));
aidas "
?>Išvestis:
Ši išvestis bus rodoma vykdant failą iš naršyklės. Čia bus išspausdinti visi JSON duomenų klausimai ir atsakymai mėlyna spalva ir drąsus formatas, ir bus atspausdinta kita dalis raudona spalva.
http: // localhost / json / exp4.php
Išvada
Šiame straipsnyje bandoma parodyti, kaip galite atspausdinti suformatuotus JSON duomenis naudodami įvairias PHP parinktis. Tikiuosi, kad skaitytojas galės pritaikyti PHP formatuodamas JSON duomenis ir sugeneruodamas gana JSON išvestį, tinkamai praktikavęs pirmiau pateiktus pavyzdžius.