Il formato JSON in PHP

JSON è un formato per la memorizzazione dei dati. Questo formato è spesso utilizzato per lo scambio di dati tra siti web, o tra il server e il browser. Questo formato è più compatto e semplice rispetto all'XML, quindi al momento è utilizzato molto più ampiamente.

L'acronimo JSON sta per JavaScript Object Notation. Il fatto è che originariamente JSON è stato ideato nel linguaggio JavaScript, ma ora è utilizzato ovunque.

Dal punto di vista di PHP, i dati in formato JSON sono rappresentati da una stringa:

php<?php
  $str = '
    // qui ci sarà il JSON
  ';
?>

Il formato stesso è una sorta di struttura multidimensionale, composta da array ordinari e associativi. Gli elementi degli array possono essere stringhe obbligatoriamente tra doppi apici, numeri, valori true, false o null.

Vediamo alcuni esempi. Creiamo un array con numeri:

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

Creiamo un array con stringhe:

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

Creiamo un array con contenuto misto:

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

Creiamo ora un array associativo. In termini di JavaScript, tali array sono chiamati oggetti. Gli oggetti sono racchiusi tra parentesi graffe, e le chiavi sono separate dai valori da due punti. Inoltre, le chiavi di tali array devono essere stringhe obbligatoriamente tra doppi apici. Facciamo un esempio di oggetto:

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

È possibile combinare array e oggetti in strutture di qualsiasi livello di annidamento:

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

Si noti che le virgole finali dopo l'ultimo elemento nel formato JSON non sono consentite:

php<?php
  $str = '[
    "a",
    "b", 
    "c",
  ]'; // l'ultima virgola è superflua
?>
Задание 1

Converti la seguente struttura PHP in una stringa JSON:

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

Converti la seguente struttura PHP in una stringa JSON:

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

Converti la seguente struttura PHP in una stringa JSON:

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

Converti la seguente struttura PHP in una stringa JSON:

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