PHP:
Werken met JSON
Hoe te:
Een array naar JSON coderen
$array = ['foo' => 'bar', 'baz' => 'qux'];
$json = json_encode($array);
echo $json; // {"foo":"bar","baz":"qux"}
JSON decoderen naar een object
$json = '{"foo":"bar","baz":"qux"}';
$object = json_decode($json);
echo $object->foo; // bar
JSON decoderen naar een associatieve array
$json = '{"foo":"bar","baz":"qux"}';
$array = json_decode($json, true);
echo $array['foo']; // bar
Omgaan met JSON-fouten
$json = '{"foo":"bar,"baz":"qux"}'; // Let op de ontbrekende aanhalingsteken
$array = json_decode($json, true);
if(json_last_error() != JSON_ERROR_NONE) {
echo json_last_error_msg(); // Syntaxisfout, slecht gevormde JSON
}
Diepgaand
JSON is sinds de vroege jaren 2000 de de facto standaard voor webgegevensuitwisseling geworden, waarbij XML werd vervangen vanwege de eenvoud. Alternatieven zoals XML en YAML bestaan, maar de compactheid en snelheid van JSON hebben het tot een topkeuze gemaakt. De PHP json_encode()
en json_decode()
functies serialiseren en deserializeren gegevens respectievelijk. Sinds PHP 5.4.0 maakt de optie JSON_PRETTY_PRINT
de uitvoer leesbaarder, en vanaf PHP 7.3.0 kunnen ontwikkelaars JsonException
gooien voor foutafhandeling, waardoor het parsen van JSON robuuster wordt.
Zie Ook
- PHP Handleiding over JSON: https://www.php.net/manual/en/book.json.php
- JSON Homepage: http://json.org/
- PHP op de Juiste Manier (JSON handling sectie): https://phptherightway.com/#json
- Composer, een afhankelijkheidsbeheer voor PHP (gebruikt JSON voor pakketinformatie): https://getcomposer.org/