PHP'де JSON форматы
JSON маалыматтарды сактоо форматы болуп саналат. Бул формат көбүнчө сайттар ортосунда, же сервер менен браузер ортосунда маалымат алмашүү үчүн колдонулат. Бул формат XML'ге салыштырмалуу анча татаал эмес жана кичинекей, ошондуктан азыркы учурда кеңири колдонулууда.
JSON аббревиатурасы JavaScript Object Notation дегенди билдирет. Негизи, JSON алгач JavaScript тилинде ойлоп табылган, бирок азыр бардык жерде колдонулууда.
PHP'нин көз карашынан, JSON форматындагы маалыматтар сап түрүндө көрсөтүлөт:
<?php
$str = '
// бул жерде JSON болот
';
?>
Форматтын өзү кадимки жана ассоциативдүү
массивдерден турган көп өлчөмдүү структураны
түзөт. Массивдердин элементтери болуп,
ар дайым кош тырмакчаларда жазылган саптар,
сандар, true, false
же null маанилери болушу мүмкүн.
Келгиле, мисалдар аркылуу карап көрөлү. Сандардан турган массив түзөлү:
<?php
$str = '[1, 2, 3, 4, 5]';
?>
Саптардан турган массив түзөлү:
<?php
$str = '["a", "b", "c"]';
?>
Аралаш мазмундагы массив түзөлү:
<?php
$str = '[1, "a", true, false, null]';
?>
Эми ассоциативдүү массив түзөлү. JavaScript терминдеринде мындай массивдер объекттер деп аталат. Объекттер тармал жаалуу кашааларга алынат, жана ачкычтар маанилерден үтүр менен бөлүнөт. Мындай массивдердин ачкычтары ар дайым кош тырмакчаларда жазылган саптар болушу керек. Объекттин мисалын түзөлү:
<?php
$str = '{
"a": 1,
"b": 2,
"c": 3
}';
?>
Массивдер менен объекттерди каалаган деңгээлдеги кирүүлөрдө айкалыштырса болот:
<?php
$str = '{
"a": [1, 2, 3],
"b": [4, 5, 6]
}';
?>
JSON форматында акыркы элементтен кийин калган үтүрлөргө жол берилбейт:
<?php
$str = '[
"a",
"b",
"c",
]'; // акыркы үтүр артыкча
?>
Төмөнкү PHP структурасын JSON сабына айландырыңыз:
<?php
$data = [1, 2, 3];
?>
Төмөнкү PHP структурасын JSON сабына айландырыңыз:
<?php
$data = ['x', 'y', 'z',];
?>
Төмөнкү PHP структурасын JSON сабына айландырыңыз:
<?php
$data = [
'x' => 'a',
'y' => 'b',
'z' => 'c',
];
?>
Төмөнкү PHP структурасын JSON сабына айландырыңыз:
<?php
$data = [
'ru' => ['1', '2', '3'],
'en' => ['a', 'b', 'c'],
];
?>