次のPHPコードを使用してGoogle CSE APIの最初の50件の結果を取得しようとしています。CSE Googleカスタムページapiは50の結果PHPを表示しますか?
問題は、最初の位置が最初のページの1つで、2番目の位置が2番目のページの2番目であるように、結果が崩れてしまう2つのページを組み合わせることです。誰かが私がここで間違っていることを教えてもらえますか?
私が実際にやりたいことは、配列の最初の50個の結果を得ることですが、以下のコードは私に混在した結果を与えます。
$apiKey = "theapikey";
$query = "news";
for ($i = 1; $i <= 5; $i++) {
$ch = curl_init();
$request = "https://www.googleapis.com/customsearch/v1?q=" . urlencode("$query") . "&cx=013594553343653397533:q-qkkaltmay" ."&key=" . $apiKey . "&start=" . $i;
curl_setopt($ch, CURLOPT_URL, $request);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
$output = curl_exec($ch);
$output = json_decode($output);
foreach($output->items as $result) {
$url = $result->link;
${"items" . $i}[] = $url;
}
}
echo json_encode($items1);
廃止されたv1についてのご回答ありがとうございました。このメソッドを使用する場合、空の配列に戻ります。 – Jan
また、$リクエストを記録するとき、正しいURLが返されますが、配列は空のままです。 – Jan
最初に、JSON/REST APIのアップデートがあります:http://stackoverflow.com/questions/43041894/google-cse-rest-api-is-v1-deprecated-is-there-a-v2 –