PHP:
Arbeider med JSON
Hvordan:
Å jobbe med JSON i PHP er enkelt takket være de innebygde funksjonene json_encode()
og json_decode()
. Nedenfor er eksempler som viser hvordan man konverterer et PHP-array til en JSON-streng, og omvendt:
Enkoding av et PHP-array til en JSON-streng
// Definerer et assosiativt array
$data = [
"name" => "John Doe",
"age" => 30,
"email" => "[email protected]"
];
// Konverterer PHP-array til en JSON-streng
$jsonString = json_encode($data);
// Skriver ut JSON-strengen
echo $jsonString;
Eksempel på utskrift:
{"name":"John Doe","age":30,"email":"[email protected]"}
Dekoding av en JSON-streng til et PHP-array
// JSON-streng
$jsonString = '{"name":"John Doe","age":30,"email":"[email protected]"}';
// Konverterer JSON-strengen til et PHP-array
$data = json_decode($jsonString, true);
// Skriver ut PHP-array
print_r($data);
Eksempel på utskrift:
Array
(
[name] => John Doe
[age] => 30
[email] => [email protected]
)
Arbeid med et tredjepartsbibliotek: GuzzleHttp
For komplekse JSON- og webforespørselshåndteringer er et populært PHP-bibliotek GuzzleHttp. Det forenkler HTTP-forespørsler og jobber enkelt med JSON-data.
Installasjon via Composer:
composer require guzzlehttp/guzzle
Eksempel på forespørsel:
require 'vendor/autoload.php';
use GuzzleHttp\Client;
$client = new Client();
// Sender en forespørsel til en API som returnerer JSON
$response = $client->request('GET', 'https://api.example.com/data', [
'headers' => [
'Accept' => 'application/json',
],
]);
// Dekoder JSON-respons til et PHP-array
$data = json_decode($response->getBody(), true);
// Skriver ut dataene
print_r($data);
Forutsatt at API-en returnerer lignende JSON-data:
Array
(
[name] => John Doe
[age] => 30
[email] => [email protected]
)
Dette viser enkelheten ved å bruke PHP for JSON-manipulasjon, både med
native funksjoner og med robuste biblioteker som GuzzleHttp for mer komplekse oppgaver.