以下代码是在PSP数据库中生成付款。 “print_r($ result)”将提供如下打印输出:https://i.imgur.com/4HABiQW.png
我的问题是;我如何最简单地检索“id”(值= 10101870)并将其放入变量?
我不确定我应该只是json还是类似的东西,因为我不熟悉这种存储数据的方式(是“对象”还是特殊类型的数组?)
$params = array(
"currency" => "DKK",
"order_id" => "1234567890",
);
$data_string = http_build_query($params, '&');
$headers = array(
'Accept-Version: v10',
'Accept: application/json',
'Authorization: Basic ' . base64_encode(":HIDDEN_KEY")
);
$ch = curl_init('https://api.quickpay.net/payments');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$result = curl_exec($ch);
if(!curl_exec($ch)){
die('Error: "' . curl_error($ch) . '" - Code: ' . curl_errno($ch));
}
curl_close($ch);
print_r($result);
答案 0 :(得分:0)
因为它没有从print_r
打印数组或对象,所以它看起来像是json格式的字符串。您可以对ID进行以下操作:
$data=json_decode($result, true);
echo $data['id'];
或者如果你想使用对象:
$data=json_decode($result);
echo $data->id;
答案 1 :(得分:0)
删除此行
curl_setopt($ch, CURLOPT_HEADER, true);
因此,您的$result
不会包含HTTP
标头,只留下json
有效负载。
然后解码json
字符串并访问id
成员
$object = json_decode($result);
print $object->id;