Heim >Backend-Entwicklung >PHP-Tutorial >Wie greife ich mit PHP auf Daten aus JSON zu?

Wie greife ich mit PHP auf Daten aus JSON zu?

Linda Hamilton
Linda HamiltonOriginal
2024-12-23 10:09:40403Durchsuche

How Do I Access Data from JSON Using PHP?

Wie greife ich mit PHP auf Daten aus JSON zu?

PHP bietet die Funktion json_decode(), um einen JSON-String zu dekodieren und ihn in eine PHP-Datenstruktur zu konvertieren. Sehen wir uns an, wie man auf die Ergebnisse zugreift:

Zugriff auf Objekteigenschaften:

Auf Objekteigenschaften kann über $object->property zugegriffen werden Zum Beispiel:

$json = '{"type": "donut", "name": "Cake"}';
$yummy = json_decode($json);
echo $yummy->type; // "donut"

Zugriff auf Array-Elemente:

Auf Array-Elemente kann über $array[0] zugegriffen werden. Zum Beispiel:

$json = '["Glazed", "Chocolate with Sprinkles", "Maple"]';
$toppings = json_decode($json);
echo $toppings[1]; // "Chocolate with Sprinkles"

Zugriff auf verschachtelte Elemente:

Auf verschachtelte Elemente kann über aufeinanderfolgende Attribute und Indizes zugegriffen werden, z. B. $object-> ->usw. :

$json = '{"type": "donut", "name": "Cake", "toppings": [{"id": "5002", "type": "Glazed"}]}';
$yummy = json_decode($json);
echo $yummy->toppings[0]->id; // "5002"

In assoziatives Array konvertieren:

Übergeben Sie true als zweiten Parameter von json_decode(), um JSON zu konvertieren Das Objekt wird in ein assoziatives Array dekodiert, dessen Schlüssel Zeichenfolgen sind:

$json = '{"type": "donut", "name": "Cake"}';
$yummy = json_decode($json, true);
echo $yummy['type']; // "donut"

Der Zugriff auf die assoziativen Array-Elemente:

kann über foreach (array_expression as $key => $-Wert) Schlüssel und Werte durchqueren:

$json = '{"foo": "foo value", "bar": "bar value", "baz": "baz value"}';
$assoc = json_decode($json, true);
foreach ($assoc as $key => $value) {
    echo "The value of key '$key' is '$value'" . PHP_EOL;
}

Ausgabe:

The value of key 'foo' is 'foo value'
The value of key 'bar' is 'bar value'
The value of key 'baz' is 'baz value'

Unbekannte Datenstruktur:

Wenn Sie die Datenstruktur nicht kennen , lesen Sie bitte die entsprechende Dokumentation oder verwenden Sie print_r() Überprüfen Sie das Ergebnis:

print_r(json_decode($json));

json_decode() gibt null zurück:

Dies geschieht, wenn der JSON null oder ungültig ist. Verwenden Sie json_last_error_msg(), um Fehlermeldungen zu überprüfen.

Attributnamen mit Sonderzeichen:

Verwenden Sie {"@attributes":{"answer":42}}, um auf Attributnamen mit Sonderzeichen zuzugreifen:

$json = '{"@attributes":{"answer":42}}';
$thing = json_decode($json);
echo $thing->{'@attributes'}->answer; //42

Das obige ist der detaillierte Inhalt vonWie greife ich mit PHP auf Daten aus JSON zu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn