JSON formatas: duomenų kūrimas, naudojimas su PHP ir JS. JSON pradedantiesiems, naudojant javascript ir jQuery Json duomenis per įprastą formą

Kintamieji, masyvai ir objektai yra pažįstama ir patogi duomenų pateikimo forma. Įprasta duomenis apibūdinti naršyklės kalba JavaScript, o tai nėra būtina PHP serverio kalba. JSON formatas leidžia juos apibendrinti į vieną visumą, o ne sutelkti dėmesį į programavimo kalbą. Šiuo atveju duomenys virsta poromis: „vardas = vertė“. Vertė kiekvienoje iš jų taip pat gali būti tokių porų rinkinys.

Įprasta JSON susieti su riestiniais skliaustais, o pastarasis yra gana pagrįstas, nes JSON formatas = JavaScript Object Notation. Pastaraisiais ypač dinamiškais metais daug kas pasikeitė. Tai, kas buvo sukurta tam tikram tikslui, dažnai atnešdavo netikėtų rezultatų arba atverdavo naujus horizontus.

Duomenų mainai: naršyklė – serveris

AJAX technologija tapo tradiciniu, reguliariu puslapio atnaujinimu visiškai nustojo būti populiarus. Lankytojas, atidaręs svetainę, inicijuoja dalinių duomenų mainų seriją, kai tam tikri puslapiai keičiasi tik toje vietoje, kuri yra aktuali.

Manoma, kad JSON atsiradimas yra susijęs su AJAX naudojimu, tačiau iš tikrųjų asociatyvinis ir jo objektų žymėjimas (objektų aprašymo ir naudojimo sintaksės ypatybės) turi daug labiau susijusį ryšį su JSON nei keitimasis duomenimis tarp naršyklę ir serverį.

Kadangi šiuolaikinių svetainių puslapių turinys tikrai tapo „masinis“ (didelis), duomenų mainų formato efektyvumas įgijo ypatingą reikšmę. Tai nereiškia, kad JSON tapo nauju duomenų vaizdu, tačiau tai, kad jis ilgą laiką buvo „JavaScript“ sintaksės elementas, yra reikšmingas.

Kirilicos naudojimas įvardijant kintamuosius yra labai netikėtas reiškinys (nesąmonė), tačiau jis veikia naujausiose „Chrome“, „Firefox“ ir net „Internet Explorer 11“ versijose.

Kirilica ir JSON

Žinoma, nėra prasmės naudoti šį visiškai netikėtą reiškinį, prisiminus, kaip lengvai rusiškomis raidėmis parašytų kintamųjų reikšmės virsta šlykštu: ką jau kalbėti apie vardus, ypač išorinius.

Abejotina, ar iniciatyvą kirilicos pavadinimais palaikys išorinė naršyklės aplinka, su kuria jai nuolat tenka susidurti. Tačiau šis faktas nusipelno dėmesio dėl tos paprastos priežasties, kad JSON formatas yra galimybė rašyti vardus ir reikšmes taip, kaip nori kūrėjas. Tai svarbu, nes kiekvienoje užduotyje, kaip reikalaujama, programos srities aprašymas žymiai supaprastina derinimą ir sumažina klaidų skaičių.

Nesvarbu, kas tiksliai buvo sintaksės naujovės - JSON - pagrindas, svarbu, kad ji suteiktų teisinę teisę ir realią galimybę nustatyti atitiktį: „bet koks pavadinimas = bet kokia vertė“.

Turime pagerbti JavaScript kalbą: tai, ką suteikia sintaksė, kūrėjo neįpareigoja ir nieko jam neprimeta. Kūrėjas laisvai naudoja kalbos sintaksę, kad optimaliai sudarytų duomenų modelį ir jų naudojimo algoritmą.

PHP ir JSON

Priimdamas duomenis JSON formatu, serveris (ypač per PHP) suteikia galimybę juos apdoroti tokius, kokie yra, ir grąžinti rezultatą atgal į naršyklę panašiu formatu. PHP šaltinio masyvas:

  • $cJSON = masyvas ("a"=> "alfa", "b"=> "beta", "g"=> "gama").

Konvertuoti į JSON, kad būtų galima pristatyti į naršyklę:

  • $cJS = json_encode($cJSON).

Rezultatas:

  • („a“: „alfa“, „b“: „beta“, „g“: „gama“).

Leidžiamas lizdas, parodytas nuotraukoje.

Čia sugeneruotas masyvas buvo pridėtas nauju elementu „į save“ su automatiniu indeksu „0“, o tada vėl su nurodytu indeksu „z“.

Json_decode() konvertuoja JSON eilutę į PHP masyvą. Panašių rezultatų galima pasiekti manipuliuojant funkcijomis ir explode(). Kai kuriais atvejais ši parinktis yra pageidautina.

Lizdų lygis

Elementai gali būti įdėti tiek naršyklės, tiek serverio pusėje. Praktiškai JSON formatas (RFC 4627 standarto aprašymas) suteikia žymiai daugiau nei 4 įdėjimo lygius, tačiau šia funkcija piktnaudžiauti nereikėtų.

Geriausia niekada neviršyti pagrįsto pakankamumo; dėl to kodas tampa skaitomas, todėl kitiems kūrėjams jį lengviau derinti ir suprasti.

JSON paprastai vadinamas duomenų konstrukcijomis, kurios yra paprastesnės nei XML ir suprantamos tiek žmonėms, tiek kompiuteriams. Tai tiesa, kai duomenų kiekis mažas ir kūrėjas protingai pasirinko įdėjimo lygį. Visais kitais atvejais sunku suskaičiuoti skliaustų skaičių ir suprasti tiek naršyklės, tiek serverio pusėje.

JSON failai

JSON naudojimas praktikoje dažnai neapsiriboja žmogaus skaitoma trumpa eilute. Bet kokia duomenų konstrukcija visada yra pragmatiška. Tuo pačiu metu JSON gali būti efektyviai naudojamas tiek realių užduočių duomenims (įmonės personalui), tiek laikiniesiems duomenims diegti (objekto talpykla).

Įmonės personalas ir JSON formatas: pavyzdys

Paprastai įrašas apie vieną asmenį yra pavardė, vardas, tėvavardis, gimimo metai, specialybė, išsilavinimas, ... ir keletas kitų paprastų vertybių. Net ir ypač reikliose įmonėse rekordas apie vieną žmogų neviršys keliolikos ar dviejų laukų. Tai pastebima ir gali būti įtraukta į duomenų bazės eilutę.

Jei įmonėje dirba keli žmonės, tai vienas dalykas, o jei dešimtys tūkstančių – visai kas kita. Galite ir toliau naudotis duomenų baze, tačiau laikyti ją kaip failą atrodo praktiškiau ir lengviau naudoti.

JSON yra paprasto teksto failas. Atvejis su personalo lentele yra savaime suprantamas. Jūs visada galite jį perskaityti. Atidaryti ir redaguoti taip pat galima bet kurioje teksto rengyklėje, kuri neturi įpratimo prie failo turinio pridėti savo paslaugų informacijos. Apskritai *.json yra grynas tekstas tiek naršyklėje, tiek failo viduje – eilutė.

Nuotraukoje parodyta paveikslėlį sudarančio objekto talpykla, pavyzdys.

Tai failo, kurį sugeneravo svetainė, teikianti spalvotą 3D spausdinimą ant puodelių ir keramikos, turinio pavyzdys. Natūralu, kad turint tokį JSON formatą, nuspręsti, kaip jį atidaryti, tikrai sunku. Tačiau šiuo ir panašiais atvejais su failo skaitymu problemų nekyla: PHP nuskaito failą, išanalizuoja ir perduoda naršyklei. Lankytojo pakeisti duomenys grąžinami į serverį ir įrašomi atgal.

Tokiu atveju failas veikia kaip kintamasis, kuris saugomas už kodo ribų. Jei reikia, kintamasis gauna reikšmę iš failo, o jei lankytojas jį pakeis svetainės pateiktame dialoge, visi pakeitimai bus įrašomi tokie, kokie yra. Nereikia skaityti ir tikrinti failo turinio.

JSON dažnai naudojamas paslaugų informacijai saugoti ir naudoti – tai nėra personalo lentelė ir jos nereikia matyti nei kūrėjui, nei svetainės lankytojui.

XML ir JSON

„Viskam savas laikas“ – tai klasikinis žinojimas, priimtas kaip aksioma dar prieš programavimo atsiradimą. „Nieko tiesiog neatsiranda“ – tai taip pat atsitiko prieš žmogui parašant pirmąją suprantamą programą dirbtine kalba.

Duomenų formatai kyla iš realių poreikių ir yra pagrįsti įgytomis žiniomis. HTML turi savo kelią, XML turi savo kelią, o JSON yra JavaScript objekto logika, išplėsta į kitas kalbas. Lyginti vienas su kitu nėra geriausias dalykas. Kiekvienam savo.

XML puikiai susidoroja su savo užduotimis ir akivaizdžiai netaps istorija. Ir JSON buvo naudojamas iki 2006 m.; tiesiog ne kiekvienas kūrėjas laikė savo pareiga deklaruoti tam tikras jų duomenų pateikimo parinktis.

Praktikoje pasitaikė atvejų, kai BASIC kalba buvo parašytos programos, kurios nenaudojo JSON kaip tokio, bet puikiai išsaugojo „vardas = vertė“ poras ir padarė jas tinkamu metu prieinamas reikiamiems algoritmams.

Specialieji simboliai („`“, „~“, „|“, ...) ir duomenų formatai

Įprotis dirbti su asociatyviniais masyvais ir objektais „JavaScript“ daro JSON naudojimą natūralu ir patogu. Tai tikrai puikus formatas, tačiau galimybė atskirti ir sujungti, manipuliuojant eilutėmis ir masyvais, turi daug gilesnes šaknis.

„JavaScript“ kalbos sujungimo / padalijimo ir PHP kalbos implode / explode funkcijos leidžia patogiai ir efektyviai naudoti tiek XML, tiek JSON duomenų formatus, tiek savo versiją. Pastarasis dažnai yra optimalus, o pirmieji du idealiai tinka bendro naudojimo galimybėms. Jei informacija perkeliama į kitą kūrėją, serverį, failą ar duomenų bazę, nėra geresnio būdo rasti XML ir JSON. Su jais dirba visi, todėl informacijos perdavimas/priėmimas komentarų nereikalauja.

JSON naudojimas „Android“.

Duomenų skaitymas ir rašymas JSON formatu „Android“ yra ne tik norma, bet yra ir daugybė objektų, skirtų darbui su šiuo konkrečiu duomenų formatu.

Šiuo atveju naudojamas JSON formatas. Tai gal ir tiesa, tačiau klausimas ne socialinių tinklų fenomenalumas, o tai, kad pateikti informaciją „vardas = vertė“ formatu tikrai patogu tiek programuojant, tiek naudojant. Skirtingai nuo griežto ir sudėtingo „XML“, tai tikrai žmogui patogus formatas.

Asociatyviniai masyvai

Taip atsitinka, kad kintamieji turi būti aprašyti (JavaScript) arba turi būti nurodyta bent pradinė reikšmė (PHP). Abiem atvejais kintamasis gali labai lengvai pakeisti savo tipą. Jei reikia, kalba šią konversiją atlieka automatiškai.

Bet kodėl kintamasis taip pat neturėtų pakeisti savo pavadinimo, atsirasti vykdant algoritmą ir išnykti, kai jo nebereikia? Asociatyvūs masyvai išsprendžia šią problemą, tačiau tada, kai naudojami tokie santykinai dinamiški kintamieji, masyvo pavadinimas ir atitinkamos sintaksės eina ten, kur jie naudojami.

Ši aplinkybė ypač ryški PHP, bet jūs galite su tuo susitaikyti, kaip ir su simboliu „$“ kintamojo pavadinime ir „$this->“ deriniu objekto viduje. Vienu metu programuodami JavaScript ir PHP, iš pradžių tikrai nustebsite, kaip viskas skiriasi, bet tada viskas tampa taip pažįstama ir natūralu...

Asociatyvus masyvas -> JSON

Šiame pavyzdyje *.docx dokumentas sukuriamas naudojant PHPOffice/PHPWord biblioteką, o masyve aProperties yra šio dokumento ypatybės (autorius, įmonė, pavadinimas, kategorija, sukūrimo data...).

Antrame masyve yra puslapio duomenys:

  • orientacija (kraštovaizdis arba įprasta);
  • vertikalūs ir horizontalūs matmenys;
  • įtraukos (paraštės kairėje, viršuje, apačioje, dešinėje);
  • antraštės ir poraštės.

Dokumentas generuojamas serveryje, kuriame įdiegta PHPOffice/PHPWord biblioteka. Svetainė leidžia valdyti šių masyvų reikšmes naudojant JavaScript. Rezultatas JSON formatu grąžinamas atgal į serverį ir naudojamas PHP algoritmuose, jo konstrukcijose, tai yra masyvuose.

Dinaminiai kintamieji

JSON formatas išsprendžia dinaminių kintamųjų problemą. Čia galite kurti, keisti ir ištrinti kintamuosius be nereikalingos sintaksės netvarkos. Jis atrodo gražiai ir yra naudojamas JavaScript.

Šiame pavyzdyje funkcija GetOjInfo() nuskaito vertės pavadinimą ir reikšmę iš objekto. Iš pradžių ojInfo kintamajam priskirtas JSON eilutės objektas turi tris elementus: vardą, amžių ir darbą. Šiek tiek vėliau pridedamas būsenos kintamasis.

Po pirmojo trynimo operatoriaus ojInfo eilutė praranda amžiaus elementą, po antrojo trynimo – darbo elementą. Jei darysime prielaidą, kad ši eilutė yra kintamųjų, turinčių tam tikrą reikšmę, pasirinkimas, tada naudodami JSON iš tikrųjų galite sukurti, keisti ir ištrinti bet kokius jų rinkinius, esančius už JavaScript kalbos aprašymo ir apdorojimo veiklos lauko (sintaksės).

JSON formatas šiai parinkčiai nebuvo sukurtas, tačiau tai įmanoma, praktiška ir patogu.

„JavaScript“ leidžia ne tik pridėti interaktyvumo prie tinklalapių, bet ir atlikti užduotis, už kurias kažkada buvo atsakingi serveriai. JSON suteikia paprastą būdą kurti ir saugoti struktūrinius duomenis JavaScript. JSON yra labai populiarus ir yra puiki XML alternatyva. JSON (JavaScript Object Notation), kaip rodo pavadinimas, yra pagrįstas javascript objektų kūrimu. „JavaScript“ objektai gali būti lengvai manipuliuojami ir analizuojami naudojant tą patį „JavaScript“.

Skirtingai nuo XML, JSON sakinius lengvai sudaro ir žmonės, ir kompiuteriai. JSON formato duomenis galima, pavyzdžiui, priskirti kintamajam (taip kuriame objektą); tada šiuos duomenis galima nuskaityti naujai sukurtame objekte.

var data=( "firstName" : "Ray" ); įspėjimas(duomenys.vardas);

Pirmiausia sukuriame kintamąjį duomenims laikyti, o tada objektui apibrėžti naudojame JSON. Mūsų objektas yra gana paprastas: laukas firstName ir spindulio reikšmė. JSON eilutės turi būti pateiktos kabutėse. Jei naudojate skaičius, kabutės yra neprivalomos.

Šiame pavyzdyje naršyklėje bus rodoma ypatybės firstName reikšmė.

Vietos rezervavimo objekto kūrimas

Sukurkime tikroviškesnį pavyzdį: įterpkite JSON duomenis į DOM objektą.

var data=("firstName":"Ray"); document.getElementById("placeholder").innerHTML=data.firstName;

Dabar, užuot rodę įspėjimą, įdedame duomenis į HTML elementą. Žinoma, JSON duomenys gali būti daug sudėtingesni. Pabandykime pridėti dar kelis laukus.

data=( "firstName":"Ray", "pavardė":"Villalobos", "prisijungė":2012 ); document.getElementById("placeholder").innerHTML=data.firstName+" "+data.lastName+" "+data.joined;

Atminkite, kad JSON duomenys suformatuoti tam tikru būdu, kad būtų geriau suprasti. Lauko „prisijungta“ reikšmė yra 2012, todėl kabučių nereikia, nes tai yra skaičius. Pažvelkime į kažką sudėtingesnio.

Masyvų pridėjimas

Ką daryti, jei norime įvesti žmonių grupę...tada reikia naudoti masyvus. JSON masyvą galima sukurti naudojant laužtinius skliaustus. Pažiūrėkime, kaip mūsų duomenys atrodys keliems vartotojams.

Var data=("naudotojai":[ ( "firstName":"Ray", "pavardė":"Villalobos", "joined":2012 ), ( "firstName":"Jonas", "pavardė":"Jones", "joined":2010 ) ]) document.getElementById("placeholder").innerHTML=data.users.firstName + " " + data.users.lastName+" "+ data.users.joined;

Atrodo šiek tiek sudėtinga, bet iš tikrųjų nėra sunku suprasti. JSON objektas sukuriamas naudojant riestinius skliaustus; masyvas sukuriamas naudojant laužtinius skliaustus. Taigi, norėdami tvarkyti duomenis, sukūrėme vartotojų objektą, į kurį įdėjome masyvą. Masyve yra kitų objektų. Kiekviena (vardas/reikšmė) pora atskiriama kableliu.

Atkreipkite dėmesį, kaip pasikeitė vardo įterpimo kodas. Sujungėme naujų naudotojų objektą ir tada panaudojome laužtinius skliaustus, kad nurodytume pirmąjį masyvo elementą. Pridėkime dar vieną duomenų struktūros lygį.

Var data=("naudotojai":[ ( "firstName":"Ray", "pavardė":"Villalobos", "prisijungė": ( "mėnuo":"sausis", "day":12, "year":2012 ) ), ( "firstName":"Jonas", "pavardė":"Jones", "joined": ( "mėnuo":"Balandis", "diena":28, "metai":2010 ) ) ]) dokumentas. getElementById("placeholder").innerHTML=data.users.firstName + " " + data.users.lastName+"-"+ data.users.joined.month;

Sujungtoje nuosavybėje dabar yra objektas su keliais laukais; Nereikia naudoti masyvo, todėl naudojame objektų žymėjimą. Dabar turime kelių vartotojų duomenis, laikas peržiūrėti kiekvieną vartotoją ir parodyti juos sąraše.

Naudotojų sąrašo įgyvendinimas (pereinančių JSON objektą)

Taigi, naudokite javascript ir sukurkime vartotojų sąrašą.

Var data = ( "naudotojai":[ ( "firstName":"Ray", "lastName":"Villalobos", "joined": ( "mėnuo":"sausis", "diena":12, "metai":2012 m. ) ), ( "firstName":"Jonas", "pavardė":"Džonsai", "prisijungė": ( "mėnuo":"balandis", "diena":28, "metai":2010 ) ) ]) var output ="

    "; ) output+="
"; document.getElementById("placeholder").innerHTML=išvestis;

Norint peržvelgti visas objekto savybes, konstrukcijoje yra:

For(var raktas objekte) ( // raktas - savybės pavadinimas // objektas - ypatybės reikšmė... )

Čia mes einame per visus masyvo elementus; išsaugome duomenis išvesties kintamajame ir įdedame duomenis į elementą, kurio id lygus vietos rezervavimo dydžiui . galite pastebėti, kad mūsų duomenys kaupiami šiek tiek lėtai.

JSON skaitymas iš išorinio failo

Būtų gerai išsaugoti duomenis išoriniame faile ir prireikus perskaityti. Aš naudosiu jQuery biblioteką, todėl pirmiausia turime įtraukti jQuery biblioteką; tada vadiname getJSON funkciją. Štai kaip atrodo mūsų kodas:

JSON pavyzdys $.getJSON("duomenys.json", funkcija(duomenys) ( var output="

    "; for (var i in data.users) ( output+="
  • " + data.users[i].firstName + " " + data.users[i].pavardė + "--" + data.users[i].joined.month+"
  • "; ) output+="
"; document.getElementById("placeholder").innerHTML=output; ));

Tai beveik tas pats kodas, bet duomenys pateikiami. Mes paprasčiausiai viską užbaigėme su getJSON funkcija, kuri atlieka visą sunkų failo skaitymo darbą. Tarkime, duomenų failas data.json yra tame pačiame kataloge ir atrodo taip:

("naudotojai":[ ( "firstName":"Ray", "lastName":"Villalobos", "joined": ( "mėnuo":"sausis", "day":12, "year":2012 ) ), ( "firstName":"Jonas", "pavardė":"Jones", "prisijungė": ( "mėnuo":"Balandis", "diena":28, "year":2010 ) ) ])

Kaip matote, JSON tikrai lengva skaityti, o pripratus prie skliaustų, koduoti tampa lengva.

Jei kompiuteryje įdiegta antivirusinė programa, galite nuskaityti visus kompiuteryje esančius failus, taip pat kiekvieną failą atskirai. Galite nuskaityti bet kurį failą dešiniuoju pelės mygtuku spustelėdami failą ir pasirinkę atitinkamą failo virusų nuskaitymo parinktį.

Pavyzdžiui, šiame paveikslėlyje paryškintas failas my-file.json, tada reikia dešiniuoju pelės mygtuku spustelėti šį failą ir failo meniu pasirinkti parinktį „nuskaityti naudojant AVG“. Pasirinkus šią parinktį, AVG Antivirus atsidarys ir nuskaitys failą, ar nėra virusų.


Kartais klaida gali atsirasti dėl neteisingai įdiegtos programinės įrangos, kuri gali atsirasti dėl diegimo proceso metu iškilusios problemos. Tai gali neleisti jūsų operacinei sistemai susieti JSON failą su tinkama taikomąja programine įranga, o tai turės įtakos vadinamosioms „failo plėtinių asociacijoms“.

Kartais paprasčiausiai iš naujo įdiegę „Mozilla Firefox“ galite išspręsti problemą tinkamai susiedami JSON su „Mozilla Firefox“. Kitais atvejais problemų dėl failų susiejimo gali kilti dėl blogo kūrėjo programinės įrangos programavimo, todėl gali tekti susisiekti su kūrėju dėl tolesnės pagalbos.


Patarimas: pabandykite atnaujinti „Mozilla Firefox“ į naujausią versiją, kad įsitikintumėte, jog turite naujausius pataisymus ir naujinimus.


Tai gali atrodyti pernelyg akivaizdu, tačiau dažnai problemos priežastis gali būti pats JSON failas. Jei gavote failą el. pašto priedu arba atsisiuntėte jį iš svetainės, o atsisiuntimo procesas buvo nutrauktas (pvz., dingo elektra ar dėl kitos priežasties), failas gali būti sugadintas. Jei įmanoma, pabandykite gauti naują JSON failo kopiją ir bandykite atidaryti dar kartą.


Įspėjimas: sugadintas failas gali sukelti papildomos žalos dėl ankstesnės arba esamos jūsų kompiuteryje esančios kenkėjiškos programos, todėl svarbu, kad kompiuteryje nuolat veiktų atnaujinta antivirusinė programa.


Jei JSON failas yra susietas su jūsų kompiuterio aparatine įranga, gali tekti atnaujinti su ta aparatine įranga susietas įrenginio tvarkykles, kad galėtumėte atidaryti failą.

Ši problema dažniausiai siejama su medijos failų tipais, kurie priklauso nuo sėkmingo kompiuterio aparatinės įrangos, pvz., garso plokštės ar vaizdo plokštės, atidarymo. Pavyzdžiui, jei bandote atidaryti garso failą, bet negalite jo atidaryti, gali tekti atnaujinti garso plokštės tvarkykles.


Patarimas: jei bandydami atidaryti JSON failą gaunate klaidos pranešimą, susijusį su .SYS failu, greičiausiai problema gali kilti dėl sugadintų arba pasenusių įrenginių tvarkyklių, kurias reikia atnaujinti. Šį procesą galima palengvinti naudojant tvarkyklės naujinimo programinę įrangą, tokią kaip DriverDoc.


Jei atlikus veiksmus nepavyko išspręsti problemos ir vis tiek kyla problemų atidarant JSON failus, tai gali būti dėl galimų sistemos išteklių trūkumo. Norint tinkamai atidaryti kai kurias JSON failų versijas, gali prireikti daug išteklių (pvz., atminties / RAM, apdorojimo galios). Ši problema yra gana dažna, jei naudojate gana seną kompiuterio aparatinę įrangą ir tuo pačiu daug naujesnę operacinę sistemą.

Ši problema gali kilti, kai kompiuteriui nepavyksta atlikti užduoties, nes operacinė sistema (ir kitos fone veikiančios paslaugos) gali eikvoti per daug išteklių JSON failui atidaryti. Prieš atidarydami „Mozilla Firefox“ žymių atsarginę kopiją, pabandykite uždaryti visas savo kompiuteryje esančias programas. Atlaisvinus visus turimus išteklius kompiuteryje bus sudarytos geriausios sąlygos bandant atidaryti JSON failą.


Jei atlikote visus anksčiau nurodytus veiksmus ir JSON failas vis tiek neatsidaro, gali tekti atnaujinti aparatinę įrangą. Daugeliu atvejų, net naudojant senesnes aparatinės įrangos versijas, apdorojimo galios vis tiek gali pakakti daugumai vartotojų programų (nebent dirbate daug procesoriaus reikalaujančio darbo, pvz., 3D atvaizdavimo, finansinio / mokslinio modeliavimo arba intensyvus daugialypės terpės darbas). Todėl tikėtina, kad jūsų kompiuteryje nėra pakankamai atminties (dažniau vadinamos „RAM“ arba laisvosios kreipties atmintimi), kad būtų galima atlikti failo atidarymo užduotį.

„Json“ buvo sukurtas „JavaScript“ (jo visas pavadinimas yra „JavaScript Object Notation“) ir tai yra duomenų mainų formatas.

Json rado savo naudojimą įvairiose programavimo kalbose - pavyzdžiui, PHP, kur jis atrodo taip:

["1":"geltona";"2":"žalia";"3":"pilka"]

Pavyzdyje matyti, kad tarpų nėra, o pavadinimas ir reikšmė pateikiami dvigubose kabutėse. Jei ilgis leidžia, eilutę galima naudoti duomenims perduoti GET metodu.

Šiuo atveju perduodamas masyvas gali turėti kelių lygių struktūrą. PHP turi json funkcijų rinkinį, skirtą tokioms eilutėms kurti ir iššifruoti ir dirbti tik su UTF-8.

Json_encode php Ši funkcija konvertuoja objektą, masyvą arba kintamąjį į json formatą. Šis pavyzdys konvertuos masyvą į šį formatą. ?> Json_decode in php Ši funkcija iššifruoja gautą eilutę ir priklausomai nuo to, kuri parinktis buvo pasirinkta, gauname objektą arba masyvą. Funkcija turi du parametrus – privalomąjį (iššifruojama eilutė) ir pasirenkamąjį (jei nurodysite, bus išvedamas masyvas, jei ne, objektas). Apsvarstykite toliau pateiktą pavyzdį. Duomenų gavimas iš klasės: duomenų gavimas iš masyvo: Json_last_error php

Ši funkcija neturi parametrų. Jis grąžina reikšmę, kuri identifikuoja klaidų priežastį.

  • JSON_ERROR_NONE – nėra klaidų
  • JSON_ERROR_SYNTAX – sintaksės klaida
  • JSON_ERROR_UTF8 – neteisingi UTF-8 simboliai, galbūt netinkama koduotė
  • JSON_ERROR_DEPTH – pasiektas didžiausias krūvos gylis
  • JSON_ERROR_STATE_MISMATCH – netinkamas arba neteisingas JSON
  • JSON_ERROR_CTRL_CHAR – valdymo simbolio klaida, galbūt neteisinga koduotė

Žmonės, susipažinę su programavimu, iškart atpažins failus su JSON plėtiniu. Šis formatas yra JavaScript Object Notation santrumpa ir iš esmės yra teksto duomenų mainai, naudojami JavaScript programavimo kalboje. Atitinkamai, specializuota programinė įranga arba teksto rengyklės padės jums atidaryti tokius failus.

Pagrindinė JSON formato scenarijų savybė yra jų pakeičiamumas su XML formatu. Abu tipai yra tekstiniai dokumentai, kuriuos galima atidaryti teksto rengyklėmis. Tačiau pradėsime nuo specializuotos programinės įrangos.

1 būdas: Altova XMLSpy

Gana gerai žinoma kūrimo aplinka, kuria naudojasi ir interneto programuotojai. Ši aplinka taip pat generuoja JSON failus, todėl gali atidaryti trečiųjų šalių dokumentus su šiuo plėtiniu.


Ši programinė įranga turi du trūkumus. Pirmasis yra mokamo paskirstymo pagrindas. Bandomoji versija yra aktyvi 30 dienų, tačiau norėdami ją gauti, turite nurodyti vardą ir el. pašto adresą. Antrasis – bendras sudėtingumas: žmogui, kuriam tereikia atidaryti failą, jis gali atrodyti per daug sudėtingas.

2 būdas: Notepad++

Daugiafunkcis teksto redaktorius Notepad++ yra pirmasis scenarijų, tinkamų JSON formatui atidaryti, sąraše.


Notepad++ turi daug privalumų – rodo daugelio programavimo kalbų sintaksę, palaiko įskiepius, yra nedidelio dydžio... Tačiau dėl kai kurių savybių programa veikia lėtai, ypač jei joje atsiverčiate didelį dokumentą.

3 būdas: AkelPad

Neįtikėtinai paprastas ir tuo pat metu turtingas teksto redaktorius iš Rusijos kūrėjo. Jo palaikomi formatai apima JSON.


Kaip ir Notepad++, ši užrašų knygelės parinktis taip pat nemokama ir palaiko papildinius. Tai veikia greičiau, tačiau dideli ir sudėtingi failai gali neatsidaryti pirmą kartą, todėl atminkite šią funkciją.

4 metodas: Komodo redagavimas

Nemokama programinė įranga, skirta rašyti programos kodą iš Komodo. Jame yra moderni sąsaja ir platus programuotojų palaikymas.


Deja, programoje nėra rusų kalbos. Tačiau eilinį vartotoją greičiausiai atbaidys per didelis funkcionalumas ir nesuprantami sąsajos elementai – juk šis redaktorius pirmiausia skirtas programuotojams.

5 būdas: puikus tekstas

Kitas į kodą orientuotų teksto redaktorių atstovas. Sąsaja paprastesnė nei jos kolegų, tačiau galimybės tos pačios. Taip pat yra nešiojama programos versija.


Deja, „Sublime Text“ nėra rusų kalba. Trūkumu galima pavadinti ir shareware platinimo modelį: nemokama versija niekaip neribojama, tačiau karts nuo karto pasirodo priminimas apie būtinybę įsigyti licenciją.

6 būdas: NFOPad

Paprastas bloknotas taip pat tinka peržiūrėti dokumentus su JSON plėtiniu.