Сервер: JSON для обмена данными

JSON (JavaScript Object Notation) — это легковесный формат обмена данными, основанный на синтаксисе JavaScript. JSON является языконезависимым и часто используется для обмена данными между клиентом и сервером, а также для хранения конфигурационных файлов.

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

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

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

// Пример JSON-объекта
var jsonString = `{
  "name": "Иван",
  "age": 30,
  "hobbies": ["плавание", "путешествия"],
  "family": {
    "spouse": "Елена",
    "children": ["Анна", "Михаил"]
  },
  "employed": true
}`;

// Преобразование JSON-строки в JavaScript-объект
var jsonObject = JSON.parse( jsonString );

// Получение значения из JSON-объекта
console.log( jsonObject.name ); 
// > "Иван"

// Изменение значения в JSON-объекте
jsonObject.employed = false;

// Преобразование JavaScript-объекта обратно в JSON-строку
var jsonStringUpdated = JSON.stringify(jsonObject);

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

// Пример JSON-строки
$jsonString = '{
  "name": "Иван",
  "age": 30,
  "hobbies": ["плавание", "путешествия"],
  "family": {
    "spouse": "Елена",
    "children": ["Анна", "Михаил"]
  },
  "employed": true
}';

// Преобразование JSON-строки в массив PHP
// Второй параметр associative - если true, то объекты JSON будут возвращены как ассоциативные массивы; если false, то объекты JSON будут возвращены как объекты (object). Если null, объекты JSON будут возвращены в зависимости от того, установлена ли JSON_OBJECT_AS_ARRAY в параметре flags
$jsonArray = json_decode( $jsonString, true );

// Получение значения из массива PHP
echo $jsonArray['name']; 
// > "Иван"

// Изменение значения в массиве PHP
$jsonArray['employed'] = false;

// Преобразование массива PHP обратно в JSON-строку
// JSON_UNESCAPED_UNICODE — это константа-опция, которая отвечает за то, чтобы при кодировании строки в JSON формат, символы Unicode (например, кириллические символы) сохранялись в виде исходных символов, а не их закодированного представления. Без использования JSON_UNESCAPED_UNICODE, при кодировании строки в JSON, символы Unicode будут преобразованы в экранированный формат с использованием кодов символов Unicode. Например, буква "а" (кириллица) будет представлена как \u0430.
$jsonStringUpdated = json_encode( $jsonArray, JSON_UNESCAPED_UNICODE );
3.6 г. Просмотров: 6.3k
Материал помог? Оценка помогает находить устаревшие и спорные решения.

Комментарии

0

Нашли ошибку или хотите дополнить материал?

Комментариев пока нет.Можно первым дополнить материал или сообщить об ошибке.
Telegram