API ที่มีพารามิเตอร์ POST ในรูปแบบ JSON ใน PHP
บางครั้งพารามิเตอร์ก็เป็น อาเรย์ ในกรณีนี้ควรแพ็คพารามิเตอร์ดังกล่าว เป็น JSON มาดูตัวอย่างกัน สมมติว่าเรามี API ต่อไปนี้ ที่คาดหวังอาเรย์ในรูปแบบ JSON และส่งคืน ผลรวมขององค์ประกอบอาเรย์นั้น:
<?php
echo array_sum(json_decode($_POST['json'], true));
?>
มาทำคำขอไปยัง API นี้กัน:
<?php
$url = 'http://api.loc/index.php';
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POST, 1);
$arr = [1, 2, 3, 4, 5];
$json = json_encode($arr);
$data = ['json' => $json];
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
$res = curl_exec($curl);
var_dump($res);
?>
สร้าง API ที่รับพารามิเตอร์เป็น อาเรย์ของวันที่ และส่งคืนอาเรย์ของเหตุการณ์ทางประวัติศาสตร์ ที่เกิดขึ้นในวันที่ส่งมา