Google Local Search PHP для Javascript - PullRequest
2 голосов
/ 22 февраля 2010

Заранее извиняюсь, этот вопрос может быть не самым ясным, но я постараюсь сформулировать все возможное.

В моем PHP-скрипте я обрабатываю строку. Я хочу получить все, что находится в скобках [], и выполнить локальный поиск Google (см. http://code.google.com/apis/ajax/playground/#show_driving_directions) в строке. После того, как поиск обработан, я хочу получить только первый результат.

В качестве фона у меня есть PHP-скрипт, выполняющийся каждый раз, когда приходит "сообщение".

У меня есть все работающие с регулярными выражениями, просто нужно знать, как будет выглядеть вызов API поиска Google и вернуть первый результат.

1 Ответ

2 голосов
/ 22 февраля 2010

Я бы предложил вызвать API AJAX напрямую и проанализировать результат из JSON в объект ( json_decode () ) и получить первый результат.

См. Документы API в следующих частях,

http://code.google.com/apis/ajaxsearch/documentation/reference.html#_fonje_urlbase http://code.google.com/apis/ajaxsearch/documentation/reference.html#_fonje_args http://code.google.com/apis/ajaxsearch/documentation/reference.html#_fonje_local

Лично я работал над некоторыми классами, которые обертываются вокруг AJAX API, но они не близки к завершению (возможно, они будут реорганизованы для лучшей структуры).

Однако вы можете получить текущий источник из моего SVN, если хотите. Я сделал Локальный поиск, и он работает в своем текущем виде.

http://codelib.stephenmelrose.co.uk/svn/php/branches/1.0/library/

Вы бы использовали это как

require_once("library/google/search/Local.php");

$google_search = new SM_Google_Search_Local('starbucks');
$google_search->setHTTPReferer("http://localhost.localhost/");
$google_search->setResultSetSize(Google_Search::RESULT_SET_SIZE_LARGE);
$google_search->setCenterPoint('53.79548,-1.549416');

$response = $google_search->getResponse();
$results = $response->getResults();

// Your first result
$results[0];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...