JSON-formaat in PHP
JSON is 'n formaat vir data berging. Hierdie formaat word dikwels gebruik vir data-uitruiling tussen webwerwe, of tussen 'n bediener en 'n blaaier. Hierdie formaat is meer kompak en eenvoudig in vergelyking met XML, daarom word dit tans baie meer wyd gebruik.
Die afkorting JSON staan vir JavaScript Object Notation. Die saak is dat JSON oorspronklik in die JavaScript-taal bedink is, maar nou oral gebruik word.
Vanuit PHP se oogpunt is data in JSON-formaat 'n string:
<?php
$str = '
// hier sal JSON wees
';
?>
Die formaat self is 'n soort
multidimensionele struktuur, wat bestaan
uit gewone en assosiatiewe skikkings.
Die elemente van skikkings kan strings wees
(noodwendig in dubbele aanhalingstekens), getalle,
waardes true, false
of null.
Kom ons kyk na voorbeelde. Laat ons 'n skikking met getalle maak:
<?php
$str = '[1, 2, 3, 4, 5]';
?>
Laat ons 'n skikking met strings maak:
<?php
$str = '["a", "b", "c"]';
?>
Laat ons 'n skikking met gemengde inhoud maak:
<?php
$str = '[1, "a", true, false, null]';
?>
Laat ons nou 'n assosiatiewe skikking maak. In JavaScript-terminologie word sulke skikkings objekte genoem. Voorwerpe word tussen krulhakies geplaas, en sleutels word van waardes met dubbelpunte geskei. Die sleutels van sulke skikkings moet strings wees (noodwendig in dubbele aanhalingstekens). Laat ons 'n voorbeeld van 'n voorwerp maak:
<?php
$str = '{
"a": 1,
"b": 2,
"c": 3
}';
?>
Jy kan skikkings en voorwerpe kombineer in strukture van enige vlak van nesteling:
<?php
$str = '{
"a": [1, 2, 3],
"b": [4, 5, 6]
}';
?>
Let op dat hangende kommas na die laaste element in JSON-formaat onaanvaarbaar is:
<?php
$str = '[
"a",
"b",
"c",
]'; // laaste komma is oortollig
?>
Herskep die volgende PHP-struktuur in 'n JSON-string:
<?php
$data = [1, 2, 3];
?>
Herskep die volgende PHP-struktuur in 'n JSON-string:
<?php
$data = ['x', 'y', 'z',];
?>
Herskep die volgende PHP-struktuur in 'n JSON-string:
<?php
$data = [
'x' => 'a',
'y' => 'b',
'z' => 'c',
];
?>
Herskep die volgende PHP-struktuur in 'n JSON-string:
<?php
$data = [
'ru' => ['1', '2', '3'],
'en' => ['a', 'b', 'c'],
];
?>