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 для складніших завдань.