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.