JSON-Format in PHP
JSON ist ein Format zur Datenspeicherung. Dieses Format wird oft für den Datenaustausch verwendet, entweder zwischen Websites oder zwischen Server und Browser. Dieses Format ist kompakter und einfacher im Vergleich zu XML, daher wird es derzeit viel häufiger verwendet.
Die Abkürzung JSON steht für JavaScript Object Notation. Die Sache ist die, dass JSON ursprünglich in der Sprache JavaScript erfunden wurde, aber jetzt überall verwendet wird.
Aus Sicht von PHP sind Daten im JSON-Format eine Zeichenkette:
<?php
$str = '
// hier wird JSON stehen
';
?>
Das Format selbst ist eine Art
mehrdimensionale Struktur, die
aus gewöhnlichen und assoziativen Arrays besteht.
Elemente der Arrays können Zeichenketten
(obligatorisch in doppelten Anführungszeichen), Zahlen,
die Werte true, false
oder null sein.
Sehen wir uns Beispiele an. Erstellen wir ein Array mit Zahlen:
<?php
$str = '[1, 2, 3, 4, 5]';
?>
Erstellen wir ein Array mit Zeichenketten:
<?php
$str = '["a", "b", "c"]';
?>
Erstellen wir ein Array mit gemischtem Inhalt:
<?php
$str = '[1, "a", true, false, null]';
?>
Lassen Sie uns nun ein assoziatives Array erstellen. In der Terminologie von JavaScript werden solche Arrays Objekte genannt. Objekte werden in geschweifte Klammern gesetzt, und Schlüssel werden von Werten durch Doppelpunkte getrennt. Dabei müssen die Schlüssel solcher Arrays Zeichenketten sein, obligatorisch in doppelten Anführungszeichen. Erstellen wir ein Beispielobjekt:
<?php
$str = '{
"a": 1,
"b": 2,
"c": 3
}';
?>
Man kann Arrays und Objekte in Strukturen beliebiger Verschachtelungstiefe kombinieren:
<?php
$str = '{
"a": [1, 2, 3],
"b": [4, 5, 6]
}';
?>
Beachten Sie, dass nachgestellte Kommas nach dem letzten Element im JSON-Format nicht erlaubt sind:
<?php
$str = '[
"a",
"b",
"c",
]'; // letztes Komma ist überflüssig
?>
Wandeln Sie die folgende PHP-Struktur in einen JSON-String um:
<?php
$data = [1, 2, 3];
?>
Wandeln Sie die folgende PHP-Struktur in einen JSON-String um:
<?php
$data = ['x', 'y', 'z',];
?>
Wandeln Sie die folgende PHP-Struktur in einen JSON-String um:
<?php
$data = [
'x' => 'a',
'y' => 'b',
'z' => 'c',
];
?>
Wandeln Sie die folgende PHP-Struktur in einen JSON-String um:
<?php
$data = [
'ru' => ['1', '2', '3'],
'en' => ['a', 'b', 'c'],
];
?>