Formát JSON v PHP
JSON je formát pro ukládání dat. Tento formát se často používá pro výměnu dat mezi weby, nebo mezi serverem a prohlížečem. Tento formát je kompaktnější a jednodušší ve srovnání s XML, proto se nyní používá mnohem častěji.
Zkratka JSON znamená JavaScript Object Notation. Faktem je, že JSON byl původně vytvořen v jazyce JavaScript, ale nyní se používá všude.
Z pohledu PHP jsou data ve formátu JSON reprezentována jako řetězec:
<?php
$str = '
// zde bude JSON
';
?>
Samotný formát představuje určitou
vícerozměrnou strukturu, složenou
z obyčejných a asociativních polí.
Prvky polí mohou být řetězce
povinně v dvojitých uvozovkách, čísla,
hodnoty true, false
nebo null.
Podívejme se na příklady. Vytvořme pole s čísly:
<?php
$str = '[1, 2, 3, 4, 5]';
?>
Vytvořme pole s řetězci:
<?php
$str = '["a", "b", "c"]';
?>
Vytvořme pole se smíšeným obsahem:
<?php
$str = '[1, "a", true, false, null]';
?>
Nyní vytvořme asociativní pole. V terminologii JavaScriptu se taková pole nazývají objekty. Objekty se uzavírají do složených závorek, a klíče se oddělují od hodnot dvojtečkami. Přičemž klíče takových polí musí být řetězce povinně v dvojitých uvozovkách. Vytvořme příklad objektu:
<?php
$str = '{
"a": 1,
"b": 2,
"c": 3
}';
?>
Můžeme kombinovat pole a objekty ve strukturách jakékoli úrovně vnoření:
<?php
$str = '{
"a": [1, 2, 3],
"b": [4, 5, 6]
}';
?>
Mějte na paměti, že visící čárky za posledním prvkem ve formátu JSON nejsou povoleny:
<?php
$str = '[
"a",
"b",
"c",
]'; // poslední čárka je nadbytečná
?>
Přetvořte následující strukturu PHP na řetězec JSON:
<?php
$data = [1, 2, 3];
?>
Přetvořte následující strukturu PHP na řetězec JSON:
<?php
$data = ['x', 'y', 'z',];
?>
Přetvořte následující strukturu PHP na řetězec JSON:
<?php
$data = [
'x' => 'a',
'y' => 'b',
'z' => 'c',
];
?>
Přetvořte následující strukturu PHP na řetězec JSON:
<?php
$data = [
'ru' => ['1', '2', '3'],
'en' => ['a', 'b', 'c'],
];
?>