Formát JSON v PHP
JSON je formát na ukladanie údajov. Tento formát sa často používa na výmenu údajov medzi webmi, alebo medzi serverom a prehliadačom. Tento formát je kompaktnejší a jednoduchší v porovnaní s XML, preto sa v súčasnosti používa oveľa častejšie.
Skratka JSON znamená JavaScript Object Notation. Funguje to tak, že pôvodne bol JSON vymyslený v jazyku JavaScript, ale teraz sa používa všade.
Z pohľadu PHP sú údaje vo formáte JSON reťazec:
<?php
$str = '
// tu bude JSON
';
?>
Samotný formát predstavuje určitú
viacrozmernú štruktúru, pozostávajúcu
z obyčajných a asociatívnych polí.
Prvkami polí môžu byť reťazce
povinne v dvojitých úvodzkovkách, čísla,
hodnoty true, false
alebo null.
Pozrime sa na príklady. Vytvorme pole s číslami:
<?php
$str = '[1, 2, 3, 4, 5]';
?>
Vytvorme pole s reťazcami:
<?php
$str = '["a", "b", "c"]';
?>
Vytvorme pole so zmiešaným obsahom:
<?php
$str = '[1, "a", true, false, null]';
?>
Teraz vytvorme asociatívne pole. V terminológii JavaScriptu sa takéto polia nazývajú objekty. Objekty sú uzavreté do zložených zátvoriek, a kľúče sú oddelené od hodnôt dvojbodkami. Zároveň musia byť kľúčmi takýchto polí reťazce povinne v dvojitých úvodzkovkách. Urobme príklad objektu:
<?php
$str = '{
"a": 1,
"b": 2,
"c": 3
}';
?>
Polia a objekty je možné kombinovať v štruktúrach akejkoľvek úrovne vnorenia:
<?php
$str = '{
"a": [1, 2, 3],
"b": [4, 5, 6]
}';
?>
Majte na pamäti, že visiace čiarky za posledným prvkom vo formáte JSON sú neprípustné:
<?php
$str = '[
"a",
"b",
"c",
]'; // posledná čiarka je nadbytočná
?>
Preveďte nasledujúcu štruktúru PHP na reťazec JSON:
<?php
$data = [1, 2, 3];
?>
Preveďte nasledujúcu štruktúru PHP na reťazec JSON:
<?php
$data = ['x', 'y', 'z',];
?>
Preveďte nasledujúcu štruktúru PHP na reťazec JSON:
<?php
$data = [
'x' => 'a',
'y' => 'b',
'z' => 'c',
];
?>
Preveďte nasledujúcu štruktúru PHP na reťazec JSON:
<?php
$data = [
'ru' => ['1', '2', '3'],
'en' => ['a', 'b', 'c'],
];
?>