PHP:
Arbeta med JSON

Hur man gör:

Att arbeta med JSON i PHP är okomplicerat tack vare de inbyggda funktionerna json_encode() och json_decode(). Nedan finns exempel som visar hur man konverterar en PHP-array till en JSON-sträng, och tvärtom:

Kodning av en PHP-Array till en JSON-Sträng

// Definiera en associativ array
$data = [
    "name" => "John Doe",
    "age" => 30,
    "email" => "[email protected]"
];

// Konvertera PHP-arrayen till en JSON-sträng
$jsonString = json_encode($data);

// Skriv ut JSON-strängen
echo $jsonString;

Exempelutmatning:

{"name":"John Doe","age":30,"email":"[email protected]"}

Avkodning av en JSON-Sträng till en PHP-Array

// JSON-sträng
$jsonString = '{"name":"John Doe","age":30,"email":"[email protected]"}';

// Konvertera JSON-strängen till en PHP-array
$data = json_decode($jsonString, true);

// Skriv ut PHP-arrayen
print_r($data);

Exempelutmatning:

Array
(
    [name] => John Doe
    [age] => 30
    [email] => [email protected]
)

Arbeta med ett Tredjepartsbibliotek: GuzzleHttp

För komplex hantering av JSON och webbfrågor är ett populärt PHP-bibliotek GuzzleHttp. Det förenklar HTTP-förfrågningar och arbetar lätt med JSON-data.

Installation via Composer:

composer require guzzlehttp/guzzle

Exempelförfrågan:

require 'vendor/autoload.php';

use GuzzleHttp\Client;

$client = new Client();

// Skicka en förfrågan till ett API som returnerar JSON
$response = $client->request('GET', 'https://api.example.com/data', [
    'headers' => [
        'Accept' => 'application/json',
    ],
]);

// Avkoda JSON-svaret till en PHP-array
$data = json_decode($response->getBody(), true);

// Skriv ut datan
print_r($data);

Antag att API:et returnerar liknande JSON-data:

Array
(
    [name] => John Doe
    [age] => 30
    [email] => [email protected]
)

Detta visar enkelheten i att använda PHP för JSON-manipulation, både med inbyggda funktioner och med robusta bibliotek som GuzzleHttp för mer komplexa uppgifter.