はじめに
業務でAPI連携をする際に遭遇した内容となります。
備忘録として残そうと思って今回、書きました。
例えばこんな時に使う(実際に自分が遭遇した状況)
APIでリクエストを送った際、返ってきたレスポンスの中でidやnumberなどを配列として保存して、後で別のAPIのリクエストを送る際に使用する時・・・
サンプルコード
test.php
public function main() {
$idList = ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10']
foreach ($idList as $arrayId) {
createRequest($arrayid);
}
}
public function createRequest($arrayid) {
$strId = (int)$arrayId[0];
$response = $this->httpClient->request(
'GET', //method
sprintf('/users/%s', $strId), //url
[
'headers' => 'Authorization' => アクセストークン, //headers
'query' => 検索条件 //query parameter
)
}
例えばこんな感じになります。
軽い説明
①今回は省略してますが、$idList
に設定されたidが前にAPIを叩いてリクエストを送って返ってきたレスポンスからidだけを配列として詰めたものと仮定します。
②id単位でforeach文を回して10回分、それぞれのidをurlに設定してリクエストを送ると言った形になります。
③createRequest()メソッドに引数として渡した$arrayId
は名前の通り配列となってます。
④$strId = $arrayId[0];
←ここで配列に設定されてる値をstr型にして別の変数に格納します。
終わりに
なんか他にもっといいやり方あるって方はコメントなどで教えてくれると嬉しいです!