我试图回应cURL请求中的某些值。
我的PHP代码:
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_URL => 'https://api.envato.com/v1/market/new-files:themeforest,site-templates.json',
CURLOPT_HTTPHEADER => array('Authorization: Bearer myuniquekeygoeshere')
));
$resp = curl_exec($curl);
echo $resp;
curl_close($curl);
当我使用echo $resp
时,我得到了这个(这是他们API的屏幕截图,但我得到的相同,所以到目前为止效果很好):
我怎样才能从中回应某些价值 - 让我们说“Emanate - Startup Landing Page”?
我已经尝试过echo $resp["new-files"][0]["item"];
而不是名字我得到{
而没有别的。
你得到的答案是JSON。你必须做这样的事情:
$resp = curl_exec($curl);
$respArray = json_decode($resp, true);
$item = $respArray['new-files'][0]['item'];
阅读更多here
您正在获得JSON响应,因此需要将JSON解码为Array,之后您可以使用它,尝试一次
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_URL => 'https://api.envato.com/v1/market/new-files:themeforest,site-templates.json',
CURLOPT_HTTPHEADER => array('Authorization: Bearer myuniquekeygoeshere')
));
$resp = curl_exec($curl);
$response = json_decode($resp, true);
print_r($response);
curl_close($curl);
您可以解码json并访问数组中的正确索引
例如,第一次出现的项目
$my_array = json_decode($resp, true);
echo $my_array['new-files][0]['item'];