muzruno.com

JSON формат: описание, пример

Променливите, масивите и обектите са позната и удобна форма на представяне на данни. Данните са описани в езика на браузъра на jаvascript, който не е необходим на езика на сървъра на PHP. Форматът JSON дава възможност да ги обобщим в един и да не се фокусираме върху програмния език. В този случай данните се превръщат в двойки: "name = value". Стойността във всяка от тях може да бъде и колекция от такива двойки.

json формат

JSON се свързва със скосени скоби и Обекти на jаvascript. Последният е напълно оправдан, тъй като JSON = Object Notation jаvascript формат. През последните особено динамични години много се промени. Това, което е създадено за конкретна цел, често води до неочаквани плодове или открива нови хоризонти.

Обмен на данни: браузър - сървър

Технологията AJAX се превърна в традиционно нормално обновяване на страницата изцяло е престанал да бъде популярен. По време на отварянето на даден сайт посетител инициира поредица от частичен обмен на данни, когато определени страници се променят само на съответното място.

json формат

Смята се, че появата на JSON се дължи на използването на AJAX, но всъщност е асоциативна масиви от jаvascript и обектното й означение (характеристики на синтаксиса за описване и използване на обекти) са много по-свързани с JSON, отколкото обмена на данни между браузъра и сървъра.

Тъй като съдържанието на страниците на съвременните сайтове наистина е "масивно" (обемно), ефективността на формата за обмен на данни придобива особено значение. Не може да се каже, че JSON се е превърнала в ново представяне на данни, но фактът, че отдавна е бил елемент от синтаксиса на jаvascript, е значителен.

Примерът на автора не е картина

Използването на кирилица в променливата именуване е много неочаквано явление (глупост), но работи в най-новите версии на Chrome, Firefox и дори в Internet Explorer 11.

Кирилица и JSON

Разбира се, не си струва да се използва това напълно неочаквано явление, като си спомняте колко лесно стойностите на променливите, написани с руски букви, се превръщат в кракозибари: какво има да кажем за имена, особено външни.

Съмнително е, че инициативата с кирилица ще бъде подкрепена от външната среда на браузъра, с която той непрекъснато се занимава. Но този факт заслужава внимание поради простата причина, че JSON форматът е способността да пишете имена и ценности по начина, по който един разработчик иска. Това е важно, защото във всяка задача описанието на областта на приложение, както изисква, значително опростява отстраняването на грешки и намалява броя на грешките.

Няма значение каква точно е била синтаксисната иновация - JSON - е важно да даде законно право и истинска възможност да направи съвпадение: "всяко име = всякаква стойност".

json данни

Трябва да отдадем почит на езика jаvascript: това, което се предоставя от синтаксиса, не задължава разработчика и не му налага нищо. Разработчикът свободно използва синтаксиса на езика за оптимално формиране на модела за данни и алгоритъма за използването му.

PHP и JSON

Взимайки данните във формат JSON, сървърът (чрез PHP по-специално) предоставя възможност да ги обработва така, както е и да върне резултата обратно на браузъра в подобен формат. PHP източник масив:

  • $ cJSON = масив ("a" => "alfa", "b" => "бета", "g" => "гама").

Конвертиране в JSON за прехвърляне в браузъра:

  • $ cJS = json_encode ($ cJSON).

резултат:

  • {a ":" alfa "," b ":" бета "," g ":" гама "}.

Позволеното изобразяване в снимката е разрешено.

Примерът на автора не е картина

Тук масивът бе добавен от нов елемент "сам" с автоматичния индекс "0", а след това отново с указания индекс "z".

Обратната функция json_decode () преобразува низовете JSON в масив на PHP. Подобни резултати могат да бъдат постигнати чрез манипулиране на PHP функции: implode () и explode (). В някои случаи тази опция е за предпочитане.

Ниво на гнездене

Елементите могат да бъдат вложени едно към друго както от страна на браузъра, така и от страна на сървъра. На практика JSON форматът (описанието RFC 4627) осигурява значително повече от 4 нива на гнездене, но не трябва да злоупотребявате с тази функция.

Най-добре е никога да не излизате отвъд разумната достатъчност, това прави кода четлив, опростява неговото отстраняване и разбиране от други разработчици.

JSON обикновено се отнася до структури от данни, които са по-прости от XML, се разбират едновременно от хора и компютри. Това е вярно, когато количеството данни е малко и нивото на гнездене на разработчика е избрало компетентно. Във всички останали случаи броенето на скобите и разбирането на структурата на данните е трудно както от страна на браузъра, така и от страна на сървъра.

JSON Файлове

Използването на JSON на практика често не се ограничава до достъпно възприемане на кратък низ. Всички конструкции на данни винаги са прагматични. В този случай JSON може ефективно да се прилага както в реални задачи (персонал на предприятието), така и при внедряване на временни данни (кеш на обекти).

Екип на предприятията и формат JSON: пример

Обикновено записът за един човек е фамилия, име, патроним, година на раждане, специалност, образование, ... и още няколко прости значения. Дори при особено взискателни компании, рекордът на едно лице няма да надвишава десет или две полета. Това е достъпно за възприятието и може да бъде поставено в линия на базата данни.

Ако в компанията има няколко души, това е едно, но ако десетки хиляди са напълно различни. Можете да продължите да използвате базата данни, но съхраняването му като файл изглежда по-практично и по-достъпно за използване.

json файлов формат

Файловият формат JSON е обикновен текстов файл. Случаят със списъка на персонала, където и да отиде. Винаги можете да го прочетете. Отварянето и редактирането също са достъпни във всеки текстов редактор, който няма навика да добавя своята информация за услугата към съдържанието на файла. Обикновено * .json е чист текст както вътре в браузъра, така и във файла - низ.

Снимката показва кеша на обекта, който образува картината, пример.

Примерът на автора не е картина



Това е пример за съдържанието на файл, генериран от сайт, предоставящ услуга за цветно обемно отпечатване на чаши и керамични продукти. Естествено, наистина е проблематично да решите дали имате такъв JSON формат, отколкото да го отворите. В този и други подобни случаи обаче няма проблеми при четене на файла: PHP прочита файла, анализира го и го изпраща в браузъра. Промененият от данните на посетителя се връща на сървъра и се записва обратно.

json формат, отколкото отворен

В този случай файлът действа като променлива, която се съхранява извън кода. Ако е необходимо, променливата получава стойност от файла и ако бъде променяна от посетителя в диалога, предоставен от сайта, всички промени ще бъдат записани както е. Не е необходимо да четете и проверявате съдържанието на файла.

JSON често се използва за съхраняване и използване на сервизната информация - това не е маса за персонала, не е необходимо да се вижда от разработчика или посетителя на сайта.

XML и JSON

"Всичко има своето време" - класическото знание, прието за аксиома още преди появата на програмирането. "Нищо не се появява точно така", беше и преди човек да напише първата изкуствена програма на изкуствен език.

формат json описание

Форматите на данните се показват от реалната нужда и се основават на придобитите знания. HTML има свой собствен път, XML има свой собствен път, а JSON е логическата логика на jаvascript, разширена на други езици. Сравняването едни с други не е най-доброто нещо. За всеки от неговите.

XML чудотворно се справят със задачите си и да влезе в историята очевидно няма да. И JSON е бил използван преди 2006 г., просто не всеки разработчик е считал за свой дълг да декларира някои варианти за представяне на данните си.

Има случаи в практиката, когато са написани основни програми в BASIC, които не използват JSON като такива, но перфектно съхраняват двойките "name = value" и ги дават на необходимите алгоритми в точното време.

Специални знаци ("` "," ~ "," | ", ...) и формати на данни

Навикът за работа с асоциативни масиви и обекти на jаvascript прави използването на JSON естествено и удобно. Това наистина е страхотен формат, но способността за разделяне и сливане, манипулиране на низове и масиви, има много по-дълбоки корени.

Примерът на автора не е картина

Присъединителните / разделените функции на езика jаvascript и имплода / експлозията на езика на PHP правят това удобно и ефективно да се използват както XML формати за данни, JSON, така и ваша собствена версия. Последният често е оптимален, а първите два са идеални за обща употреба. Ако има прехвърляне на информация на друг програмист, сървър, файл или база данни, XML и JSON не са по-добри. С тях всичко работи, защото предаването / приемането на информация не се нуждае от коментари.

Използване на JSON за Android

Четенето и записването на данни във формат JSON в Android е не само нормата на нещата, но и много обекти, ориентирани към работа с този формат на данни.

Много от тях свързват феноменалния успех на социалните мрежи с факта, че членовете и посетителите на съответните сайтове (Facebook, LinkedIn, Twitter, ...) се възползват от публикуваните там материали.

json например

В този случай се използва JSON форматът. Може би това е вярно, но въпросът не е феноменалният характер на социалните мрежи, а фактът, че представянето на информация във формат "име = стойност" е удобно както за програмиране, така и за използване. За разлика от строгия и сложен "XML", това е наистина подходящ за човека формат.

Асоциативни масиви

Стана така, че променливите трябва да бъдат описани (jаvascript) или най-малкото да се посочи началната стойност (PHP). И в двата случая променливата може много лесно да промени типа си. Ако е необходимо, езикът автоматично извършва тази реализация.

xml json формати за данни

Но защо променливата също не трябва да променя името си, да не се появява по време на изпълнението на алгоритъма и да не изчезва, когато нуждата от нея изчезне? Асоциативните редове позволяват да се реши този проблем, но след това с помощта на такива относително динамични променливи, името на масива и съответните синтактични конструкции ще последват до местата на тяхното приложение.

Това обстоятелство е особено изразено в PHP, но това също може да бъде толерирано със символа "$" в името на променливата и комбинацията "$ this->" в рамките на обекта. Програмиране по едно и също време в jаvascript и PHP, отначало е наистина невероятно как всичко е различно, но след това всичко става толкова познато и естествено ...

Асоциативен масив -> JSON

В този пример, от PHPOffice / PHPWord библиотека създава документ * .docx, и набор от aProperties съдържа и свойствата на документ (автор, компанията, заглавие, дата на създаване категория ...).

писане на данни във формат json в Android

Вторият масив съдържа данни на страницата:

  • Ориентация (ландшафт или обичайно);
  • размерите на вертикално и хоризонтално;
  • Отстъпи (полета отляво, отгоре, отдолу, отдясно);
  • заглавки и долни колонтитули.

Примерът на автора не е картина

Документът се създава на сървъра, където е инсталирана библиотеката PHPOffice / PHPWord. Сайтът осигурява управление на стойностите на тези масиви чрез jаvascript. Резултатът във формат JSON се връща обратно на сървъра и се използва в алгоритми на PHP, в конструкциите му, т.е. в масиви.

Динамични променливи

Форматът JSON решава проблема с динамичните променливи. Тук можете да създавате, променяте и изтривате променливи без излишни купчини синтаксис. Изглежда добре и се използва в jаvascript.

Примерът на автора не е картина

В този пример функцията GetOjInfo () избира името и стойността на стойността от обекта. Първоначално обектът на низове JSON, зададен на променливата ojInfo, има три елемента: Име, възраст и работа. Малко по-късно се добавя променливата "Статус".

Примерът на автора не е картина

След израза за изтриване ojInfo изтрива възрастовия елемент след второто изтриване на работния елемент. Ако приемем, че низа има избор на променливи, които имат специфично значение, чрез JSON всъщност може да създавате, променяте или изтривате всеки от своите набори от хирургичното поле (синтаксис) и jаvascript обработката описание език.

Форматът JSON за тази опция не беше изчислен, но е възможно, практичен и удобен.

Споделяне в социалните мрежи:

сроден