Фармат JSON у PHP

JSON уяўляе сабой фармат для захоўвання даных. Гэты фармат часта выкарыстоўваецца для абмену данымі паміж сайтамі, альбо паміж серверам і браўзерам. Гэты фармат больш кампактны і просты ў параўнанні з XML, таму ў цяперашні час выкарыстоўваецца значна шырэй.

Абрэвіятура JSON расшыфроўваецца як JavaScript Object Notation. Справа ў тым, што першапачаткова JSON быў прыдуманы ў мове JavaScript, але цяпер выкарыстоўваецца паўсюль.

З пункту гледжання PHP даныя ў фармаце JSON ўяўляюць сабой радок:

php<?php
  $str = '
    // тут будзе JSON
  ';
?>

Сам фармат уяўляе сабой нейкую шматмерную структуру, якая складаецца з звычайных і асацыятыўных масіваў. Элементамі масіваў могуць быць радкі абавязкова ў двайных двукоссі, лікі, значэнні true, false альбо null.

Давайце паглядзім на прыкладах. Зробім масіў з лікамі:

php<?php
  $str = '[1, 2, 3, 4, 5]';
?>

Зробім масіў з радкамі:

php<?php
  $str = '["a", "b", "c"]';
?>

Зробім масіў са змешаным змесцівам:

php<?php
  $str = '[1, "a", true, false, null]';
?>

Давайце цяпер зробім асацыятыўны масіў. У тэрмінах JavaScript такія масівы называюцца аб'ектамі. Аб'екты заключаюцца ў фігурныя дужкі, а ключы аддзяляюцца ад значэнняў двукроп'ямі. Пры гэтым ключамі такіх масіваў павінны служыць радкі абавязкова ў двайных двукоссі. Зробім прыклад аб'екта:

php<?php
  $str = '{
    "a": 1,
    "b": 2,
    "c": 3
  }';
?>

Можна камбінаваць масівы і аб'екты ў структурах любога ўзроўню ўкладзенасці:

php<?php
  $str = '{
    "a": [1, 2, 3],
    "b": [4, 5, 6]
  }';
?>

Майце на ўвазе, што вісячыя коскі пасля апошняга элемента ў фармаце JSON недапушчальныя:

php<?php
  $str = '[
    "a",
    "b", 
    "c",
  ]'; // апошняя коска лішняя
?>
Задание 1

Перарабіце наступную структуру PHP у радок JSON:

php<?php
  $data = [1, 2, 3];
?>
Задание 2

Перарабіце наступную структуру PHP у радок JSON:

php<?php
  $data = ['x', 'y', 'z',];
?>
Задание 3

Перарабіце наступную структуру PHP у радок JSON:

php<?php
  $data = [
    'x' => 'a',
    'y' => 'b',
    'z' => 'c',
  ];
?>
Задание 4

Перарабіце наступную структуру PHP у радок JSON:

php<?php
  $data = [
    'ru' => ['1', '2', '3'],
    'en' => ['a', 'b', 'c'],
  ];
?>