2017-10-02 4 views
0

私は映画API(https://www.themoviedb.org/documentation/api)を使用していますが、apiはページあたり20個の結果しか得られません.60件を取得したいので、3ページで3回リクエストします。 私は私がJSONエンコードを使用するか、応答をデコードする必要がある場合は知らないが、これは最初の結果リストの作品:私は「結果」への第二と第三の要求の結果を置く方法を知らないPHP Angularjs JSON複数のAPIレスポンス

$url1 = "http://api.themoviedb.org/3/movie/upcoming?api_key=###&page=1&language=de"; 
    $url2 = "http://api.themoviedb.org/3/movie/upcoming?api_key=###&page=2&language=de"; 
     $url3 = "http://api.themoviedb.org/3/movie/upcoming?api_key=###&page=3&language=de"; 

$response1 = file_get_contents($url1); 
$response2 = file_get_contents($url2); 
$response3 = file_get_contents($url3); 

echo $response1; 

: APIのブラウザで

enter image description here

角部

a.filme = []; //declare an empty array 

      $http({ 
       method: 'GET', 
       url: 'data/call-api.php' 
      }).then(function (response){ 
       a.filme = response.data.results; 
       console.log(response.data); 
      },function (error){ 
       console.log("JSON konnte nicht geladen werden: " + error.status + error.statusText); 
      }); 

REPONSE(http://api.themoviedb.org/3/movie/upcoming?api_key=###&page=1&language=de)次のようになります。事前に enter image description here

感謝:)

答えて

1

を使用結果だけが必要です。

$url1 = "http://api.themoviedb.org/3/movie/upcoming?api_key=###&page=1&language=de"; 
$url2 = "http://api.themoviedb.org/3/movie/upcoming?api_key=###&page=2&language=de"; 
$url3 = "http://api.themoviedb.org/3/movie/upcoming?api_key=###&page=3&language=de"; 

//extract results from each response and merge to single array 
$response1 = json_decode(file_get_contents($url1),true)["results"]; 
$response2 = json_decode(file_get_contents($url2),true)["results"]; 
$response3 = json_decode(file_get_contents($url3),true)["results"]; 

echo json_encode(array_merge($response1,$response2,$response3)); 
0

あなただけの結果リストの後にある場合は使用することができます:角度で

$apiKey = "###"; 

$out = []; 
for ($i = 1; $i <= 3; $i++) { 
    $url = "http://api.themoviedb.org/3/movie/upcoming?api_key=".$apiKey."&page=".$i."&language=de"; 
    $response = file_get_contents($url); 

    if (is_array($response->results)) { 
     $out = array_merge($out, $response->results); 
    } 
} 

echo json_encode($out); 

だけと仮定すると、console.log(response);

関連する問題