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

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

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


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

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


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

Кирилица и JSON

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

PHP и JSON

Когато приемат данни в JSON формат, сървърът (използвайки по-специално PHP) предоставя възможност да се справят с тях, както са, и да връщат резултатите в браузър в подобен формат. Матрица на изхода PHP:
  • $ cJSON = масив ("a" => alpha, "b" => beta, g "=> gama).
  • Преобразуване в JSON формат за предаване в браузъра:
  • $ cJS = json_encode ($ cJSON).
  • Резултат:
  • {"а": алфа, Ь, бета, g, гама}.
  • Приложеното приложение е показано на снимката.
    Тук формираният масив беше добавен с нов елемент "сам по себе си" с автоматичен индекс "0", а след това отново с посочения индекс "z". Обратната функция - json_decode () изпълнява преобразуването на JSON низ в масив от PHP. Подобни резултати могат да се постигнат чрез манипулиране на функциите на PHP: implode () и експлодиране (). В някои случаи това е най-добрият вариант.

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

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

    JSON файлове

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

    ДържаваФормат на предприятието и JSON: Пример

    Обикновено едно лице е фамилно име, име, бащино име, година на раждане, специалност, образование и някои други прости значения. Дори и в много взискателни компании, записът на един човек няма да надвишава дузина или две полета. Това е достъпно възприятие и може да бъде поставено в реда на базата данни.
    Ако в компанията има няколко души, това е едно, но ако десетки хиляди са различни. Можете да продължите да използвате базата данни, но нейното съхранение под формата на файл изглежда по-практично и достъпно за използване.
    Форматът на JSON файл е обикновен текстов файл. Случай с персонал, където не отиде. Винаги е възможно да го прочетете. Отварянето и промяната се предлага и във всеки текстов редактор, който няма навика да добавя официалната си информация към съдържанието на файла. Обикновено * .json е чист текст както вътре в браузъра, така и вътре във файла - низ. Снимката показва кеш-обект, който генерира картина, например.
    Това е пример за файл със съдържание, генериран от сайт, който предоставя цветни услуги за печат върху кръгове и керамични продукти. Разбира се, решаването с такъв JSON формат, отколкото отварянето му е наистина проблематично. Въпреки това, в този случай и в такива случаи, проблеми с четенето на файла не се случва: PHP чете файла, го разглобява и го предава на браузъра. Променените данни за посетителите се връщат на сървъра и се записват обратно.
    В тази версия, файлът служи като променлива, която се съхранява извън кода. Ако е необходимо, променливата получавастойност от файла, и ако тя се промени от посетителя на диалога, предоставен от сайта, тогава всички промени ще бъдат направени както е. Няма нужда да четете и проверявате съдържанието на файла. JSON често се използва за съхраняване и използване на официална информация - това не е график за персонала, не е задължително да е видим както за разработчика, така и за посетителя на сайта.

    XML, JSON

    "За цялото си време" - класическото познание, взето под аксиомата преди програмирането. "Нищо не изглежда точно така" - преди да е написал първата смислена програма на изкуствен език.
    Форматите на данните възникват от реалните нужди и се основават на придобитите знания. HTML има свой собствен път, в XML това е свой собствен начин, а JSON е обективната логика на javascript, разширена към други езици. Сравнете едно с друго не е най-добрият урок. На всеки един. XML работи много със своите задачи и очевидно няма да влезе в историята. JSON е използван до 2006 г., но не всеки разработчик счита, че е задължен да декларира определени или други възможности за представяне на данните си. На практика имаше случаи, когато програмите бяха написани на базата, те не използват JSON като такива, но перфектно държат двойките "name = value" и им дават необходимите алгоритми в точното време.

    Специални знаци (``, '' ',' '' ') и формати на данни

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

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

    Четенето и записването на данни в JSON формат на Android не е само правило, но и множество обекти, ориентирани към работа с този формат на данни. Много от тях свързват феноменалния успех на социалните мрежи с факта, че членовете и посетителите на съответните сайтове (Facebook, LinkedIn, Twitter) се възползват от материалите, публикувани там.
    Това използва един и същ JSON формат. Може би това е така, но въпросът не е във феноменалната социална мрежа, а във факта, че представянето на информация във формат "име = стойност" е удобно както за програмиране, така и за употреба. За разлика от строгия и сложен "XML", той е наистина приятелски за човека формат.

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

    Налице е, че променливите трябва да бъдат описани (javascript) или поне да посочват първоначалната стойност (PHP). И в двата случая променливата може много лесно да промени типа си. Ако е необходимо, езикът извършва това преобразуване автоматично.
    Но защо променливата не променя името си, не се появява по време на изпълнението на алгоритъма и не изчезва, когато нуждата от нея изчезне? Асоциативните масиви ви позволяват да решите този проблем, но след това, когато използвате такивапо отношение на динамичните променливи, името на масива и съответните синтактични конструкции ще следват мястото на приложението им. Това обстоятелство е особено ясно изразено в PHP, но може да бъде толерирано, както с символа "$" на името на променливата, така и с комбинацията "$ this-" в обекта. Програмиране както на javascript, така и на PHP едновременно, първоначално наистина удивително колко е различно, но след това всичко става толкова познато и естествено

    Асоциативен масив - & gt; JSON

    В този пример, използвайки библиотеката PHPOffice /PHPWord, се създава документ * .docx, а масивът aProperties съдържа свойствата на този документ (автор, фирма, име, категория, дата на създаване).
    ​​Вторият масив съдържа данни за страници:
  • ориентация (пейзажна или нормална);
  • вертикални и хоризонтални размери;
  • тире (полета отляво, отгоре, отдолу, отдясно);
  • заглавия.
  • Създаването на документ се извършва на сървъра, на който е инсталирана библиотеката PHPOffice /PHPWord. Сайтът осигурява управлението на стойностите на тези масиви, използвайки javascript. Резултатът в JSON формата се връща към сървъра и се използва в алгоритми в PHP, в неговите конструкции, т.е. в масиви.

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

    Форматът JSON решава проблема с динамичните променливи. Тук можете да създавате, променяте и изтривате променливи без допълнителен синтаксис. Тя изглежда красива и използва javascript.
    В този пример функцията GetOjInfo () избира името на стойността и стойността на обекта. Първоначално обектът JSON-обект, присвоен на променливата ojInfo, има три елемента: име, възраст и работа. Малко по-късноДобавя се променливата Статус.
    След изтриването на първия оператор, линията ojInfo губи възрастта на елемента, след второто изтриване, работната единица. Ако приемем, че този низ е колекция от променливи, които имат някакво значение, тогава с JSON можете действително да създавате, променяте и изтривате някой от техните набори извън операционното поле (синтаксис) на описанието и обработката на езика на javascript. JSON форматът за такъв вариант не е изчислен, но е възможно, практичен и удобен.

    Свързани публикации