function httpRequest($api, $data_string) { $ch = curl_init($api); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST"); curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . strlen($data_string)) ); $result = curl_exec($ch); curl_close($ch); return json_decode($result, true);}
将以下资料变成 json 格式传输传给对方接应的 <https-api-url>
$data = array( "id" => $id, "field" => $field);$data = httpRequest('<https-api-url>', json_encode($data));
要印出对方回的 json key and value 内容时
echo $data['message'];
如果对方回的是 json array,使用 foreach
接应即可
就能够印出迴圈,对方回传多少笔就印多少笔
foreach ($data as $value) { echo $value['message'];}
可以使用 sizeof 查看 object 的长度,轻鬆做判断
echo sizeof($data); // int
如果对方回的不是 json 只是直接传 body 过来
将上面的 function 中的
return json_decode($result, true);#改为return $result;
然后直接印出即可
echo $data;
https://ianakaberlin.medium.com/php-%E4%BD%BF%E7%94%A8-curl-%E5%AF%AB%E4%B8%80%E5%80%8B-http-request-%E5%82%B3%E9%81%9E-json-%E8%B3%87%E6%96%99%E7%B5%A6%E5%BE%8C%E7%AB%AF%E5%8F%8A%E6%8E%A5%E6%94%B6%E5%B0%8D%E6%96%B9%E5%9B%9E%E5%82%B3%E7%9A%84-json-%E8%B3%87%E6%96%99-json-api-%E4%B8%B2%E6%8E%A5-httprequest-%E4%BC%8A%E6%81%A9%E8%B8%A9%E5%9D%91%E7%AD%86%E8%A8%98-6fbc6e3b807a