KompyutaProgramu

Fomu ya JSON: maelezo, mfano

Vigezo, safu na vitu ni fomu inayojulikana na rahisi ya uwakilishi wa data. Ni desturi kuelezea data katika lugha ya kivinjari ya Javascript, ambayo sio muhimu katika lugha ya seva ya PHP. Fomu ya JSON inafanya iwezekanavyo kuifanya yao moja na sio kuzingatia lugha ya programu. Katika kesi hii, data inageuka kuwa jozi: "jina = thamani". Thamani katika kila mmoja wao pia inaweza kuwa mkusanyiko wa jozi hizo.

Ni desturi ya kuhusisha JSON na braces za curly na vitu vya JavaScript. Mwisho huo ni sahihi kabisa, tangu muundo wa JSC = Object Notation JavaScript. Katika miaka ya mwisho yenye nguvu sana imebadilika. Nini kilichoundwa kwa lengo maalum, mara nyingi huleta matunda zisizotarajiwa au kufunguliwa upeo mpya.

Kubadilisha data: kivinjari - seva

Teknolojia ya AJAX imekuwa ya jadi, uppdatering kawaida wa ukurasa mzima umekwisha kuwa maarufu. Mgeni, wakati wa kufungua tovuti, huanzisha mfululizo wa kubadilishana data ya sehemu, wakati ukurasa mmoja au nyingine inabadilika tu mahali husika.

Inaaminika kwamba kuibuka kwa JSON kunatokana na matumizi ya AJAX, lakini kwa kweli, orodha za kushirikiana za JavaScript na maelezo yake ya kitu (syntax ya kuelezea na kutumia vitu) ni karibu sana kuhusiana na JSON kuliko kubadilishana data kati ya kivinjari na seva.

Kwa kuwa maudhui ya maeneo ya kisasa yamekuwa "makubwa" (volumetric), basi ufanisi wa muundo wa kubadilishana data umepata umuhimu maalum. Haiwezi kusema kuwa JSON imekuwa uwakilishi mpya wa data, lakini ukweli kwamba kwa muda mrefu imekuwa kipengele cha syntax ya Javascript ni muhimu.

Kutumia Cyrillic katika kutaja tofauti ni jambo lisilotarajiwa (nonsense), lakini linatumika katika matoleo ya hivi karibuni ya Chrome, Firefox na hata katika Internet Explorer 11.

Cyrillic na JSON

Bila shaka, haifai kutumia jambo hili zisizotarajiwa kabisa, kukumbuka jinsi urahisi maadili ya vigezo yaliyoandikwa katika barua za Kirusi yanageuka kuwa krakozyabry: ni nini kinachosema kuhusu majina, hasa ya nje.

Inashangaa kwamba mpango katika majina ya Cyrilli utaungwa mkono na mazingira ya nje ya kivinjari, ambayo yeye daima anahitaji kushughulikia. Lakini ukweli huu unastahili kushughulikiwa kwa sababu rahisi kwamba muundo wa JSON ni uwezo wa kuandika majina na kuzingatia njia ambavyo msanidi anataka. Hii ni muhimu, kwa sababu katika kila kazi maelezo ya eneo la maombi kama inahitaji kuwa rahisi kurahisisha upungufu na kupunguza idadi ya makosa.

Haijalishi nini innovation syntactic JSON ilikuwa msingi, ni muhimu kwamba alitoa haki ya kisheria na nafasi halisi ya kuweka mechi: "jina lolote = thamani yoyote."

Tunapaswa kulipa kodi kwa lugha ya Javascript: ni nini kinachotolewa na syntax, haina kumtia msanidi programu na haimzuii chochote juu yake. Msanidi programu hutumikia kwa uhuru syntax ya lugha kwa ajili ya malezi bora ya mfano wa data na algorithm kwa kutumia.

PHP na JSON

Kuchukua data katika muundo wa JSON, seva (kwa njia ya PHP hasa) hutoa uwezo wa kuchukuliwa kama ilivyo na kurudi matokeo kwa kivinjari kwa muundo sawa. Nambari ya chanzo cha PHP:

  • $ CJSON = safu ("a" => "alfa", "b" => "beta", "g" => "gamma").

Badilisha hadi JSON kwa uhamisho kwenye kivinjari:

  • $ CJS = json_encode ($ cJSON ).

Matokeo:

  • {"" ":" Alfa "," b ":" beta "," g ":" gamma "}.

Ukiti unaonyeshwa kwenye picha unaruhusiwa.

Hapa safu iliongezwa kwa kipengele kipya "yenyewe" na index moja kwa moja "0", na kisha tena na index maalum "z".

Kazi ya inverse, json_decode (), inabadilisha safu ya JSON kwenye safu ya PHP. Matokeo sawa yanaweza kupatikana kwa kuendesha kazi za PHP: kuomba () na kulipuka (). Katika hali nyingine, chaguo hili ni bora.

Kiwango cha kuketi

Vipengele vinaweza kuunganishwa kila mmoja kwenye upande wa kivinjari na upande wa seva. Kwa mazoezi, muundo wa JSON (maelezo ya RFC 4627) hutoa viwango vya zaidi ya 4 vya kujifunga, lakini haipaswi kutumia vibaya kipengele hiki.

Ni bora kamwe kusita zaidi ya kutosha kwa kutosha, hii inafanya kanuni kuonekana, inafanya urahisi kufuta na kuelewa kwa watengenezaji wengine.

JSON mara nyingi hujulikana kwa miundo ya data ambayo ni rahisi kuliko XML, inaeleweka wakati huo huo na watu na kompyuta. Hii ni kweli wakati kiasi cha data ni chache, na kiwango cha kujifungua kiendelezaji amechagua kwa ufanisi. Katika kesi nyingine zote, kuhesabu idadi ya mabano na kuelewa muundo wa data ni ngumu kwa upande wa kivinjari na upande wa seva.

Faili za JSON

Matumizi ya JSON katika mazoezi mara nyingi hayakufikiri kwenye mstari mfupi. Dawa yoyote ya kujenga ni daima ya kisayansi. Katika kesi hii, JSON inaweza kutumika vizuri katika data halisi ya kazi (wafanyakazi wa biashara) na kwa utekelezaji wa data ya muda (cache kitu).

Watumishi wa biashara na muundo wa JSON: mfano

Kawaida rekodi ya mtu mmoja ni jina la jina, jina la kwanza, patronymic, mwaka wa kuzaliwa, utaalamu, elimu, ... na maana kadhaa rahisi zaidi. Hata katika makampuni ya kudai hasa, rekodi ya mtu mmoja haifai zaidi ya dazeni au mbili. Hii inapatikana kwa mtazamo na inaweza kuwekwa kwenye mstari wa database.

Ikiwa kuna watu kadhaa katika kampuni, hii ni jambo moja, lakini ikiwa makumi ya maelfu ni tofauti kabisa. Unaweza kuendelea kutumia database, lakini kuihifadhi kama faili inaonekana zaidi ya vitendo na inapatikana zaidi kwa matumizi.

Faili ya faili ya JSON ni faili ya maandishi wazi. Kesi na orodha ya wafanyakazi, popote ulipoenda. Unaweza kuisoma daima. Fungua na uhariri pia inapatikana katika mhariri wowote wa maandishi ambayo haina tabia ya kuongeza maelezo ya huduma yake kwenye maudhui ya faili. Kwa kawaida, * .json ni maandishi safi ndani ya kivinjari na ndani ya faili - kamba.

Picha inaonyesha cache ya kitu ambacho kinaunda picha, mfano.

Huu ni mfano wa yaliyomo ya faili iliyotokana na tovuti inayotolewa na huduma ya uchapishaji wa rangi ya volumetric kwenye bidhaa za mugs na kauri. Kwa kawaida, ni vigumu sana kuamua ikiwa una muundo wa JSON kama vile kufungua. Hata hivyo, katika hali hii na sawa hakuna matatizo ya kusoma faili: PHP inasoma faili, inafuta na kuituma kwa kivinjari. Data iliyobadilishwa na mgeni inarudi kwenye seva na kurejezwa tena.

Katika kesi hiyo, faili inafanya kama variable ambayo imehifadhiwa nje ya kificho. Ikiwa ni lazima, variable hupokea thamani kutoka kwa faili, na ikiwa imebadilishwa na mgeni katika majadiliano yaliyotolewa na tovuti, basi mabadiliko yote yatarekebishwa kama ilivyo. Hakuna haja ya kusoma na kuangalia yaliyomo ya faili.

JSON mara nyingi hutumiwa kuhifadhi na kutumia habari za huduma - hii sio orodha ya utumishi, sio lazima kuiona ama kwa msanidi programu au kwa mgeni wa tovuti.

XML na JSON

"Kila kitu kina muda wake" - elimu ya classical inakubaliwa kwa axiom hata kabla ya kuja kwa programu. "Hakuna kitu kinachoonekana kama vile" - ilikuwa pia kabla ya mtu kuandika programu ya kwanza ya akili katika lugha ya bandia.

Fomu za data zinaonekana kutokana na mahitaji halisi na zinategemea ujuzi uliopatikana. HTML ina njia yake mwenyewe, XML ina barabara yake mwenyewe, na JSON ni mantiki ya kitu cha JavaScript kinachotumiwa kwa lugha zingine. Kulinganisha moja na nyingine siyo jambo bora zaidi. Kwa kila wake mwenyewe.

XML kwa muujiza kukabiliana na kazi zake na kwenda katika historia ni wazi si kwenda. Na JSON ilitumiwa hata kabla ya 2006, sio tu kwamba msanidi wa kila mmoja alidhani kuwa ni wajibu wake kutangaza aina tofauti za kuwasilisha data yake.

Kumekuwa na matukio katika mazoezi wakati mipango ya msingi imeandikwa katika BASIC ambayo haitumii JSON kama hivyo, lakini kuhifadhi kikamilifu jozi "jina = thamani" na kuwapa kutolewa kwa taratibu zinazohitajika kwa wakati unaofaa.

Wahusika maalum ("` "," ~ "," | ", ...) na fomu za data

Tabia ya kufanya kazi na vitu vya ushirika na vitu vya JavaScript hufanya matumizi ya JSON ya asili na ya kawaida. Hii ni muundo mzuri, lakini uwezo wa kugawanyika na kuunganisha, kudhibiti masharti na makundi, ina mizizi ya kina zaidi.

Kazi ya kujiunga / kupasuliwa kwa lugha ya JavaScript na kuomba / kupasuka kwa lugha ya PHP hufanya iwe rahisi na ufanisi kutumia fomu zote za data za XML, JSON, na toleo lako mwenyewe. Mwisho mara nyingi ni bora, na mbili za kwanza ni bora kwa matumizi ya jumla. Ikiwa kuna uhamisho wa habari kwa msanidi mwingine, seva, faili au database, XML na JSON si bora. Nao wote wanafanya kazi, kwa sababu maambukizi / mapokezi ya habari hauhitaji maoni.

Kutumia JSON kwenye Android

Kusoma na kuandika data katika muundo wa JSON katika Android sio kawaida tu ya vitu, lakini pia vitu vingi vilivyoelekezwa kufanya kazi na muundo huu wa data.

Wengi hushirikisha mafanikio makubwa ya mitandao ya kijamii na ukweli kwamba wanachama na wageni kwenye maeneo husika (Facebook, LinkedIn, Twitter, ...) hufaidika na vifaa vilivyochapishwa huko.

Katika kesi hii, muundo wa JSON hutumiwa. Labda hii ni kweli, lakini swali sio hali ya ajabu ya mitandao ya kijamii, lakini ukweli kwamba kuwasilisha habari katika muundo "jina = thamani" ni rahisi kwa programu na matumizi. Tofauti na "XML" kali na ngumu, hii ni muundo wa kirafiki wa kibinadamu.

Makundi ya ushirika

Ilibadilika kuwa vigezo vinapaswa kuelezewa (JavaScript) au angalau kutaja thamani ya awali (PHP). Katika hali zote mbili, mabadiliko yanaweza kubadilisha aina yake kwa urahisi sana. Ikiwa ni lazima, lugha hufanya uongofu huu kwa moja kwa moja.

Lakini ni kwa nini kisasa haipaswi kubadili jina lake, si kuonekana wakati wa utekelezaji wa algorithm na kutopotea, wakati haja ya kutoweka? Vipindi vya ushirika vinaruhusu kutatua tatizo hili, lakini kisha kutumia vigezo hivyo vya nguvu, jina la safu na ujenzi wa syntactic zinazofanana utafuata maeneo ya maombi yao.

Hasa hali hii inaelezwa wazi katika PHP, lakini hii inaweza kuvumiliwa, kama, hata hivyo, na ishara "$" katika jina variable na mchanganyiko "$ hii->" ndani ya kitu. Programu wakati huo huo katika JavaScript na PHP, kwa mara ya kwanza inashangaza kabisa jinsi kila kitu ni tofauti, lakini basi kila kitu kinawa kawaida na asili ...

Orodha ya ushirika -> JSON

Katika mfano huu, hati * ya .docx imeundwa kwa kutumia maktaba ya PHPOffice / PHPWord, na safu ya Programu ina maudhui ya waraka huu (mwandishi, kampuni, kichwa, kikundi, tarehe ya uumbaji ...).

Safu ya pili ina data kwenye ukurasa:

  • Mwelekeo (mazingira au kawaida);
  • Ukubwa kwa wima na usawa;
  • Vitu (mashamba upande wa kushoto, kutoka juu, kutoka chini, upande wa kulia);
  • Vichwa na vidogo.

Hati hiyo imeundwa kwenye seva ambapo maktaba ya PHPOffice / PHPWord imewekwa. Tovuti hutoa usimamizi wa maadili ya vitu hivi kupitia JavaScript. Matokeo katika muundo wa JSON yanarudi kwenye seva na kutumika katika taratibu za PHP, katika ujenzi wake, yaani, katika orodha.

Vigezo vya nguvu

Fomu ya JSON hutatua tatizo la vigezo vya nguvu. Hapa unaweza kuunda, kurekebisha, na kufuta vigezo bila piles za syntax zisizohitajika. Inaonekana ni nzuri na hutumiwa katika JavaScript.

Katika mfano huu, kazi ya GetOjInfo () huchagua jina la thamani na thamani kutoka kwa kitu. Awali, kitu cha kamba cha JSON kilichochaguliwa kwa variable ya ojInfo ina vipengele vitatu: Jina, umri, na kazi. Baadaye kidogo, hali ya kutofautiana imeongezwa.

Baada ya kauli ya kwanza kufuta, kamba ya ojInfo inapoteza kipengele cha umri, baada ya pili kufuta, kipengele cha kazi. Kwa kuzingatia kwamba mstari huu ni mkusanyiko wa vigezo ambavyo vina maana fulani, basi kwa njia ya JSON unaweza kweli kuunda, kurekebisha na kufuta yoyote ya seti zao nje ya uwanja wa operesheni (syntax) ya kuelezea na kusindika lugha ya JavaScript.

Fomu ya JSON ya chaguo hili haikuhesabiwa, lakini inawezekana, ya vitendo na rahisi.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 sw.delachieve.com. Theme powered by WordPress.