Formati JSON në PHP
JSON paraqet një format për ruajtjen e të dhënave. Ky format shpesh përdoret për shkëmbimin e të dhënave ndërmjet sajteve, ose ndërmjet serverit dhe shfletuesit. Ky format është më kompakt dhe më i thjeshtë në krahasim me XML, prandaj aktualisht përdoret shumë më gjerë.
Shkurtesa JSON zgjidhet si JavaScript Object Notation. Çështja është se fillimisht JSON u sjell në gjuhën JavaScript, por tani përdet kudo.
Nga këndvështrimi i PHP, të dhënat në format JSON paraqesin një varg:
<?php
$str = '
// këtu do të jetë JSON
';
?>
Vetë formati përfaqëson një
strukturë shumëdimensionale, e përbërë
nga vargje të zakonshme dhe asociative.
Elementët e vargjeve mund të jenë vargje
domosdoshmërisht në thonjëza të dyfishta, numra,
vlerat true, false
ose null.
Le të shohim shembuj. Le të bëjmë një varg me numra:
<?php
$str = '[1, 2, 3, 4, 5]';
?>
Le të bëjmë një varg me vargje:
<?php
$str = '["a", "b", "c"]';
?>
Le të bëjmë një varg me përmbajtje të përzier:
<?php
$str = '[1, "a", true, false, null]';
?>
Le të bëjmë tani një varg asociativ. Në termat e JavaScript, vargje të tillë quhen objekte. Objektet mbyllen në kllapa kaçurrelë, dhe çelësat ndahen nga vlerat me dy pika. Në këtë rast, çelësat e vargjeve të tilla duhet të shërbejnë si vargje domosdoshmërisht në thonjëza të dyfishta. Le të bëjmë një shembull objekti:
<?php
$str = '{
"a": 1,
"b": 2,
"c": 3
}';
?>
Mund të kombinohen vargjet dhe objektet në struktura të çdo niveli të futurjes:
<?php
$str = '{
"a": [1, 2, 3],
"b": [4, 5, 6]
}';
?>
Ki parasysh se presjet e varura pas të fundit elementi në format JSON nuk lejohen:
<?php
$str = '[
"a",
"b",
"c",
]'; // presja e fundit është e tepërt
?>
Riktheni strukturën e mëposhtme PHP në një varg JSON:
<?php
$data = [1, 2, 3];
?>
Riktheni strukturën e mëposhtme PHP në një varg JSON:
<?php
$data = ['x', 'y', 'z',];
?>
Riktheni strukturën e mëposhtme PHP në një varg JSON:
<?php
$data = [
'x' => 'a',
'y' => 'b',
'z' => 'c',
];
?>
Riktheni strukturën e mëposhtme PHP në një varg JSON:
<?php
$data = [
'ru' => ['1', '2', '3'],
'en' => ['a', 'b', 'c'],
];
?>