有没有办法从PHP Geocoder获取多个结果作为默认位置的模糊位置?

时间:2015-01-05 12:10:49

标签: php api google-maps geocoding

我试着搜索一个我知道应该返回多个结果的位置,即" Paris"结果我只得到了法国巴黎。我也尝试了一些我知道存在于几个地方的城镇,村庄以及部分名称,但每次我只得到一个结果,通常是错误的结果。

有没有办法获得匹配结果列表?

我正在使用PHP Geocoder,但Google Geocoding API对此的了解也很有用。

我用Google搜索了这个内容,阅读了PHP Geocoder文档,阅读了google docs中的Region Biasing,但我能找到的只是如何获得特定于区域的结果,而不是区域非特定的,或者是非特定的以任何方式这就是我需要的。

1 个答案:

答案 0 :(得分:0)

来自Geocoder PHP的可爱 toin0u 的键盘:


Geocoder~2.x使用ResultFactory。 DefaultResultFactory仅考虑第一个结果。如果您需要多个结果,则需要使用setter:

// ...
Geocoder::setResultFactory(new \Geocoder\Result\MultipleResultFactory);
// ...

所以一个例子是:

Geocoder::setResultFactory(new \Geocoder\Result\MultipleResultFactory);
return Geocoder::geocode('Paris, France');

瞧,多个结果!

(另外,通过使用Google Geocoder API,我得到了多个结果,没问题。)