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.