JSON на PHP и Java. Примеры

JSON – простой способ хранить/передавать структурированные данные, основанный на использовании текста. Благодаря простому синтаксису можно легко хранить все что вам нужно: от одного числа до строк, объектов и массивов в виде простого текста. Кроме того, можно связывать между собой объекты и массивы для создания сложных структур данных.

Создав строку JSON, вы можете легко отправить ее другой программе или в другое место сети, поскольку эта строка представляет собой обычный текст.

Полное название — JavaScriptObjectNotation (озн. представление объектов JavaScript). Уже по имени можно догадаться, что в его основе лежит способ определения объектов и массивов.

Основные преимущества JSON:

  1. Компактность.
  2. Легко читается. Предложения могут составляться и человеком и компьютером.
  3. Удобство и простота преобразования в структуру данных, которую поддерживают большинство языков программирования (строки, числа, массивы, логические переменные и т.д.).
  4. Библиотеки и функции для создания и чтения структур JSON имеют многие языки программирования.

Для какой цели применяется JSON?

Самое распространенное применения – передача данных от сервера к веб-браузеру. Как правило, данные JSONперердаются с помощью AJAX (обменданнымивозможенбезперезагрузкистраницы).

Пример использования JSON:

  1. Посетитель открывает миниатюру товара в интернет-магазине.
  2. JavaScript, выполняющийся в веб-браузере, генерирует запрос AJAX к скрипту PHP, запущенному на сервере, отправляя ID выбранного товара.
  3. PHP скрипт получает название товара, описание, стоимость и прочую инфу из базы данных. После чего составляет из данных строку JSON и отправляет ее веб-обозревателю.
  4. JavaScript, выполняющийся на веб-браузере, получает JSON, декодирует ее и выводит полученную информацию о товаре на странице для пользователя.

Не менее успешно используется JSON и для другой цели – отправка данных от веб-браузера на сервер, передавая строку JSON, как параметр запросов POST или GET. Однако такой метод не настолько распространен, поскольку передача данных посредством запросов AJAX может быть существенно упрощена. К примеру, ID товара может входить в URL-адрес, как часть запроса GET.

Существует несколько методов, поддерживаемых библиотекой jQuery, для упрощения получения данных с помощью JSON посредством запросов AJAX.

Как правильно создать строку JSON

Для создании строки JSON нужно придерживаться нескольких правил:

  • Строка JSON содержит объект или массив значений (ассоциативный массив пар имя/значение).
  • Массив должен заключаться в квадратные скобки и содержать список значений, разделенный запятой. ([ и ])
  • Объект заключается в фигурные скобки и содержит список пар имя/значение, разделенных запятой. ({ и })
  • Пара/имя/значение содержит имя поля в двойных кавычках, за которым идет двоеточие и значение поля.
  • Значение в объекте или массиве бывает: числом (целым или же с плавающей точкой), логическим значением (false или true), строкой (в двойных кавычках), другим массивом (состоящим в квадратных скобках), другим объектом (в фигурных скобках).
  • Значение null.

Простой пример строки JSON

{
«orderID»: 123,
«shopperName»: «Иван Иванов»,
«shopperEmail»: «ivanov@example.com»,
«contents»: [
{
«productID»: 34,
«productName»: «Супер продукт»,
«quantity»: 1
},
{
«productID»: 56,
«productName»: «Чудо продукт»,
«quantity»: 3
}
],
«orderCompleted»: true
}

Рассмотрим его по частям:

  1. В начале и конце применяются фигурные скобки { и }, дающие понять, что это объект.
  2. Внутри объекта содержится несколько пар имя/значение:
  3. «orderID»: 123 – поле с именем orderId и значение 123
  4. «shopperName»: «JohnSmith» – поле с именем shopperName и значение JohnSmith
  5. «shopperEmail»: «johnsmith@example.com» – как и в предыдущем поле, тут хранится email покупателя.
  6. «contents»: [ … ] – поле с именем content, значение которого массив.
  7. «orderCompleted»: true – поле с именем orderCompleted, значение которого true
  8. Внутри массива contents располагаются два объекта, отображающих содержимое корзины. Каждый объект товара имеет 3 свойства: productID, productName, quantity.

Поскольку JSON идентичен с объектами в JavaScript, вы можете взять данный пример и создать из него JavaScript объект:

<script type=»text/javascript»>
var cart = {
«orderID»: 12345,
«shopperName»: «John Smith»,
«shopperEmail»: «johnsmith@example.com»,
«contents»: [
{
«productID»: 34,
«productName»: «SuperWidget»,
«quantity»: 1
},
{
«productID»: 56,
«productName»: «WonderWidget»,
«quantity»: 3
}
],
«orderCompleted»: true
};
</script>

Заключение

Несмотря на то, что JSON простой в понимании и реализации, он является весьма полезным инструментом для передачи данных от приложения к компьютеру (особенно, используя AJAX). Если у вас в планах создание AJAX приложения, то JSON вам в этом сможет помочь.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *