PHP:
עבודה עם JSON
איך לעשות:
עבודה עם JSON ב-PHP פשוטה הודות לפונקציות המובנות json_encode()
ו-json_decode()
. להלן דוגמאות המציגות איך להמיר מערך PHP למחרוזת JSON, ולהיפך:
קידוד מערך PHP למחרוזת JSON
// הגדרת מערך אסוציאטיבי
$data = [
"name" => "John Doe",
"age" => 30,
"email" => "[email protected]"
];
// המרת מערך ה-PHP למחרוזת JSON
$jsonString = json_encode($data);
// הדפסת המחרוזת JSON
echo $jsonString;
תוצאה לדוגמה:
{"name":"John Doe","age":30,"email":"[email protected]"}
פענוח מחרוזת JSON למערך PHP
// מחרוזת JSON
$jsonString = '{"name":"John Doe","age":30,"email":"[email protected]"}';
// המרת המחרוזת JSON למערך PHP
$data = json_decode($jsonString, true);
// הדפסת המערך PHP
print_r($data);
תוצאה לדוגמה:
Array
(
[name] => John Doe
[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] => John Doe
[age] => 30
[email] => [email protected]
)
זה מציג את קלות השימוש ב-PHP למניפולציה של JSON, גם עם פונקציות מקוריות וגם עם ספריות רבות עוצמה כמו GuzzleHttp למשימות מורכבות יותר.