我提前道歉,这个问题可能不是最清楚,但我会尽力表达。
在我的PHP脚本中,我正在处理一个字符串。我想抓住括号[]之间的任何内容,并对字符串执行google本地搜索(请参阅http://code.google.com/apis/ajax/playground/#show_driving_directions)。处理完搜索后,我只想获取第一个结果。
作为背景,我随时都会在“消息”进入时执行PHP脚本。
我有所有的正则表达式工作,只需要知道调用google搜索api的流程是什么,并返回第一个结果。
答案 0 :(得分:2)
我建议直接调用AJAX API,并将结果从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];