= 400) { return null; // or throw an exception } return json_decode($response, true); } // --- Fetch all providers ----------------------------------------------- $providers = callApi('GET', '/providers'); $providers = $providers ?? []; // Normalize rates for display foreach ($providers as &$p) { $rates = $p['rates'] ?? ''; if (is_string($rates)) { $decoded = json_decode($rates, true); if (json_last_error() !== JSON_ERROR_NONE) { // try stripping slashes $unescaped = stripslashes($rates); $decoded = json_decode($unescaped, true); } if (json_last_error() === JSON_ERROR_NONE && is_array($decoded)) { $p['rates'] = $decoded; } else { // leave as is $p['rates'] = $rates; } } elseif (is_array($rates)) { $p['rates'] = $rates; } } unset($p); // ----------------------------------------------------------------------- ?>
| ID | Name | Phone | Age | Photo | Rates | Private | Actions |
|---|