问题描述
我希望检索一个API
的内容并使用刀片中的内容。
如果返回响应,我将看到以下内容
{"CUSTOMER_NO":"00001292","VAL_1":"51610"}
但是我无法从上述输出中检索CUSTOMER_NO
或VAL_1
字段。
也不允许将psr7
响应转换为数组或字符串。
json_decode((string)$response->getBody,True)
也不会返回任何内容。
我也无法直接在刀片中使用$ response作为数组。
我的API代码:
$sql="SELECT CUSTOMER_NO,VAL_1 from tablename where VAL_1=$test";
$stid = oci_parse($conn,$sql);
oci_execute($stid);
$line = oci_fetch_array($stid,OCI_ASSOC);
echo json_encode($line);
我的控制器代码:
$client=new Client();
$url='http://test.com/test.php';
$response=($client->request('POST',$url,[ 'form_params' => [
'ac_no' => $ac_no,]],array()));
return $response;
我想分别获取CUSTOMER_NO
,VAL_1
的值/在刀片中使用相同的值。
请给点光。
解决方法
您需要使用->getBody()->getContents()
方法来获取json响应。
$response=($client->request('POST',$url,[ 'form_params' => ['ac_no' => $ac_no,]],array()));
$response = $response->getBody()->getContents();
$res =json_decode($response,true);