JSON形式のPOSTパラメータを使用したPHP API
パラメータが配列である場合があります。そのような場合、パラメータはJSONにパッケージ化する必要があります。例を見てみましょう。JSON形式の配列を期待し、その配列要素の合計を返す次のAPIがあるとします:
<?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を作成してください。