2014-12-16 5 views
-1

в настоящее время я хотел бы получить данные из JSON API URL:Ошибка при получении данных из API JSON

http://bitsnoop.com/api/trackers.php?hash=3BA918BF6B648BB6BEC6AAC716F1855451016980&json=1

Я попытался следующие:

<?php 
$query = file_get_contents('http://bitsnoop.com/api/trackers.php?hash=3BA918BF6B648BB6BEC6AAC716F1855451016980&json=1'); 
$parsed_json = json_decode($query, true); 
foreach ($parsed_json as $key => $value) 
{ 
    echo $value['ANNOUNCE']; 
    echo "<br>"; 
} 
?> 

Здесь я d хотите получить значение как:

ОБЪЯВЛЕНИЕ, NUM_SEEDERS, NUM_LEECHERS, FOUND, ОБНОВЛЕНО.

Но я получаю эту ошибку:

Предупреждение: неверный аргумент поставляются для Еогеасп() в C: \ XAMPP \ test.php в строке 4

+1

Проверить значение этого ($ parsed_json) является ARRA y или нет –

+2

'var_dump ($ query);' – techouse

+0

. У меня разные адреса. –

ответ

2

Вам нужно добавить агента пользователя заголовков

<?php 
function get_json($url, $curl = true) { 
    $responseString = ''; 
    if (!$curl) { 
     $responseString = file_get_contents($url); 
    } else { 
     $ch = curl_init($url); 
     $options = array(
      CURLOPT_RETURNTRANSFER => true, 
      CURLOPT_HTTPHEADER => array('Content-type: application/json', 'User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36') , 

     ); 
     curl_setopt_array($ch, $options); 
     $responseString = curl_exec($ch); 
    } 
    return $responseString; 
} 

$url ="http://bitsnoop.com/api/trackers.php?hash=3BA918BF6B648BB6BEC6AAC716F1855451016980&json=1"; 
$query = get_json($url); 
$parsed_json = json_decode($query, true); 
foreach ($parsed_json as $key => $value) 
{ 
    echo $value['ANNOUNCE']; 
    echo "<br>"; 
} 
?> 
1

Попробуйте приведенный ниже код и дайте мне знать:

<?php 
$loginUrl = 'http://bitsnoop.com/api/trackers.php?hash=3BA918BF6B648BB6BEC6AAC716F1855451016980&json=1'; 
$agent= 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.0.3705; .NET CLR 1.1.4322)'; 

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($ch, CURLOPT_URL,$loginUrl); 
curl_setopt($ch, CURLOPT_USERAGENT, $agent); 
$result=curl_exec($ch); 
curl_close($ch); 

$result=json_decode($result,true); 


$html="ANNOUNCE, NUM_SEEDERS, NUM_LEECHERS, FOUND, UPDATED."; 
foreach($result as $key=>$value) 
{ 

    $html.=$result[$key]["ANNOUNCE"].",&nbsp;&nbsp;"; 
    $html.=$result[$key]["NUM_SEEDERS"].",&nbsp;&nbsp;"; 
    $html.=$result[$key]["NUM_LEECHERS"].",&nbsp;&nbsp;"; 
    $html.=$result[$key]["FOUND"].",&nbsp;&nbsp;"; 
    $html.=$result[$key]["UPDATED"]; 
    $html.="<br>"; 
} 
echo $html; 

?> 
Смежные вопросы