2015-12-22 49 views
0

我有捲曲的響應,看起來像這樣:PHP:如何從API調用中解析JSON?

{"page_number":2,"items":[],"items_per_page":1,"kind":"search#companies","total_results":0,"start_index":1} 

所有我的需要是我試圖讓"total_results"像這樣的"total_results":0

所以值:

$url = "https://api.companieshouse.gov.uk/search/companies?q=POOdfgdfgyygfhfgfgfghgfP&items_per_page=1&start_index=0"; 

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($ch, CURLOPT_USERPWD, "my_password"); 
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC); 

$output = curl_exec($ch); 
$retcode = curl_getinfo($ch, CURLINFO_HTTP_CODE); 
$info = curl_getinfo($ch); 
curl_close($ch); 

echo $output->total_results[0]; 

但是,當我回應$output->total_results[0];時,我的頁面上沒有任何迴應。所以我真的不知道我做錯了什麼!

請問有人能就這個問題提出建議嗎?

任何幫助,將不勝感激。

+1

http://php.net/manual/en/function.json-decode.php – AbraCadaver

+0

@AbraCadaver,數據已經在我的PHP頁面上解碼。此外,你發佈的鏈接已經死亡。 – rooz

+0

1.你不顯示它,下面是我的水晶球2.沒有它的工作 – AbraCadaver

回答

4

作爲迴應得到的是一個JSON字符串。您可以使用json_decode其解析到一個stdClass對象:

$object = json_decode($output); 

然後你就可以訪問你想要的領域:

$total_results = $object->total_results; 

或者,您可以解析JSON字符串數組:

$array = json_decode($output, true); 

並獲取var:

$total_results = $array['total_results'];