PHP:
Робота з JSON

Як це робиться:

Робота з JSON у PHP є простою завдяки вбудованим функціям json_encode() та json_decode(). Нижче наведено приклади, що демонструють як конвертувати PHP масив у JSON рядок, та навпаки:

Кодування PHP масиву в JSON рядок

// Визначаємо асоціативний масив
$data = [
    "name" => "Джон Доу",
    "age" => 30,
    "email" => "[email protected]"
];

// Конвертуємо PHP масив в JSON рядок
$jsonString = json_encode($data);

// Виводимо JSON рядок
echo $jsonString;

Приклад виводу:

{"name":"Джон Доу","age":30,"email":"[email protected]"}

Декодування JSON рядка в PHP масив

// JSON рядок
$jsonString = '{"name":"Джон Доу","age":30,"email":"[email protected]"}';

// Конвертуємо JSON рядок в PHP масив
$data = json_decode($jsonString, true);

// Виводимо PHP масив
print_r($data);

Приклад виводу:

Array
(
    [name] => Джон Доу
    [age] => 30
    [email] => [email protected]
)

Робота з сторонньою бібліотекою: GuzzleHttp

Для складнішої обробки JSON та веб-запитів однією з популярних PHP бібліотек є GuzzleHttp. Вона спрощує HTTP-запити та легко працює з даними у форматі JSON.

Встановлення через Composer:

composer require guzzlehttp/guzzle

Приклад запиту:

require 'vendor/autoload.php';

use GuzzleHttp\Client;

$client = new Client();

// Відправлення запиту до API, що повертає JSON
$response = $client->request('GET', 'https://api.example.com/data', [
    'headers' => [
        'Accept' => 'application/json',
    ],
]);

// Декодування JSON відповіді в PHP масив
$data = json_decode($response->getBody(), true);

// Вивід даних
print_r($data);

Припускаючи, що API повертає схожі JSON дані:

Array
(
    [name] => Джон Доу
    [age] => 30
    [email] => [email protected]
)

Це демонструє легкість використання PHP для маніпуляцій з JSON, як з рідними функціями, так і з потужними бібліотеками на зразок GuzzleHttp для складніших завдань.