Zum Inhalt springen

PHP: JSON verwenden

  • Fabian Ziegler 
  • Zuletzt aktualisiert am
  • Lesezeit ca. 2 min.

Der Einsatz von JSON in PHP ist sehr sinnvoll, nur wo? Vorstellbar ist z.B., Rechte eines Benutzers in einer Datenbank zu speichern. Aber auch nach einem Request durch Ajax das JSON Objekt, das dank den Funktionen als String vorliegt, wieder an JavaScript zu senden.
Dadurch lassen sich auf einfache Art und Weise neue Daten auf der Seite ausgeben.

Hinweis: In diesem Artikel wird allerdings weder gezeigt, wie Ajax funktioniert, noch wie der String in JavaScript verarbeitet wird.

JSON ausgeben

Ein Array in JSON mittels json_encode umwandeln. Wir erhalten einen String.

<?php $namen = array( 'Fabian' => 20, 'Stefan' => 65, 'Simon' => 18, 'Joerg' => 60, 'Bettina' => 12, 'Uwe' => 18, 'Mark' => 15, 'Franz' => 65, 'Heinz' => 90 ); echo json_encode($namen); ?>
{"Fabian":20,"Stefan":65,"Simon":18,"Joerg":60,"Bettina":12,"Uwe":18,"Mark":15,"Franz":65,"Heinz":90}

JSON laden und in ein PHP Objekt umwandeln

Durch die Funktion json_decode, lässt sich ein JSON Objekt, welches als String vorliegt, in ein PHP Objekt umwandeln.

<pre>
<?php
$namen = '{"Fabian":20,"Stefan":65,"Simon":18,"Joerg":60,"Bettina":12,"Uwe":18,"Mark":15,"Franz":65,"Heinz":90}';
print_r(json_decode($namen));
?>
</pre>

Das Ergebnis sieht folgendermaßen aus:

stdClass Object ( [Fabian] => 20 [Stefan] => 65 [Simon] => 18 [Joerg] => 60 [Bettina] => 12 [Uwe] => 18 [Mark] => 15 [Franz] => 65 [Heinz] => 90 )

Um nun auf eine Person zugreifen zu können, muss das Objekt in eine neue Variable gespeichert werden.

<?php
$namen = '{"Fabian":20,"Stefan":65,"Simon":18,"Joerg":60,"Bettina":12,"Uwe":18,"Mark":15,"Franz":65,"Heinz":90}';
$namen_objekt = json_decode($namen);
echo $namen_objekt->{'Fabian'}; 
//oder echo $namen_objekt->Fabian;
?>

Zugegriffen wird dann über den Pfeiloperator. Als Ausgabe erhalten wir 20.

Fabian Ziegler