একটি PHP backend আর একটি frontend-এর মধ্যে, বা দুটি server-এর মধ্যে data আদান-প্রদানের standard format JSON — প্রায় প্রতিটি API request আর response এটা ব্যবহার করে। PHP-তে built-in JSON support আছে, কোনো package দরকার নেই।
$user = [
'name' => 'Sam',
'age' => 28,
'active' => true,
];
echo json_encode($user);
// {"name":"Sam","age":28,"active":true}echo json_encode($user, JSON_PRETTY_PRINT);Default-এ, এটা একটি stdClass object return করে — এর বদলে একটি associative array পেতে দ্বিতীয় argument হিসেবে true পাঠান, সাধারণত বেশি সুবিধাজনক পছন্দ।
$json = '{"name":"Sam","age":28}';
$object = json_decode($json);
echo $object->name; // Sam — object access
$array = json_decode($json, true);
echo $array['name']; // Sam — array accessheader('Content-Type: application/json');
$users = getUsersFromDatabase(); // associative array-এর একটি array
echo json_encode([
'success' => true,
'data' => $users,
]);অবৈধ JSON json_decode()-কে null return করায় — স্পষ্টভাবে check করার যোগ্য, কারণ একটি সত্যিকারের খালি result-ও falsy কিছুতে decode হয়।
$data = json_decode($json);
if (json_last_error() !== JSON_ERROR_NONE) {
die('Invalid JSON: ' . json_last_error_msg());
}json_encode() যা করতে পারে না
প্রতিটি PHP মান পরিষ্কারভাবে convert হয় না — একটি resource (যেমন একটি খোলা file handle) JSON-এ একেবারেই represent করা যায় না, আর একটা encode করলে চুপচাপ একটি error-এর বদলে 0 তৈরি হয়।