В настоящее время я использую следующий код:
$zipcode = '91762';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://ajax.googleapis.com/ajax/services/search/local?v=1.0&q=restauraunts+".$zipcode."&rsz=large");
curl_setopt($ch, CURLOPT_HEADER, 0);
ob_start();
curl_exec($ch);
$data = ob_get_contents();
ob_end_clean();
curl_close($ch);
$restauraunts_array = json_decode($data, true);
foreach($restauraunts_array['responseData']['results'] as $key => $value) {
$results[] = array(
'title' => $value['titleNoFormatting'],
'address' => $value['streetAddress'],
'city' => $value['city'],
'state' => $value['region'],
'zipcode' => $zipcode,
'phone' => $value['phoneNumbers'][0]['number'],
'lat' => $value['lat'],
'lng' => $value['lng']
);
}
Но он вернет только 7 результатов.Я ищу способ вернуться гораздо больше.Я просмотрел код API и не нашел никаких методов, чтобы получить больше результатов.Это можно сделать?Можете ли вы указать мне на документацию / реализацию того, как получить больше, чем несколько результатов?
ОТВЕТ: Мики смог дать ответ, который я искал.Вот что я делаю, чтобы получить 32 результата:
$zipcode = '91762';
$results = array()
$counter = array(0,8,16,24);
foreach($counter as $page) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://ajax.googleapis.com/ajax/services/search/local?v=1.0&q=restauraunts+".$zipcode."&rsz=large&start=".$page);
curl_setopt($ch, CURLOPT_HEADER, 0);
ob_start();
curl_exec($ch);
$data = ob_get_contents();
ob_end_clean();
curl_close($ch);
$restauraunts_array = json_decode($data, true);
if(!empty($restauraunts_array['responseData']['results'])) {
foreach($restauraunts_array['responseData']['results'] as $key => $value) {
$results[] = array(
'title' => $value['titleNoFormatting'],
'address' => $value['streetAddress'],
'city' => $value['city'],
'state' => $value['region'],
'zipcode' => $zipcode,
'phone' => $value['phoneNumbers'][0]['number'],
'lat' => $value['lat'],
'lng' => $value['lng']
);
}
}
return $results;