fkr/nominatim-bundle

此软件包已被废弃且不再维护。未建议替代软件包。

将 nominatim api(基于 OpenStreetMap 的地理定位 API)集成到 Symfony2

安装: 506

依赖: 0

建议者: 0

安全: 0

星级: 6

关注者: 2

分支: 9

开放问题: 1

类型:symfony-bundle

v1.0.3 2014-08-21 05:04 UTC

This package is auto-updated.

Last update: 2023-04-28 03:42:39 UTC


README

将 nominatim api(基于 OpenStreetMap 的地理定位 API)集成到 Symfony2。

你需要什么

你的服务器上必须启用 curl。

安装

引入供应商库

这可以通过三种不同的方式完成

方法 #1) 使用 composer

"require": {
    "fkr/nominatim-bundle": "*"
}

方法 #2) 使用 git 子模块

git submodule add git://github.com/fkrauthan/FkrNominatimBundle.git vendor/bundles/Fkr/NominatimBundle

方法 #3) 使用 deps 文件

[FkrNominatimBundle]
    git=git://github.com/fkrauthan/FkrNominatimBundle.git
	target=bundles/Fkr/NominatimBundle

注册 Fkr 命名空间

// app/autoload.php
$loader->registerNamespaces(array(
    'Fkr' => __DIR__.'/../vendor/bundles',
    // your other namespaces
));

将 FkrNominatimBundle 添加到你的应用程序内核

// app/AppKernel.php
public function registerBundles()
{
    return array(
        // ...
        new Fkr\NominatimBundle\FkrNominatimBundle(),
        // ...
    );
}

配置

# app/config.yml
fkr_nominatim:
    app_name:
    app_mail:
  • app_name: 你必须在此处设置你的应用程序名称(对于 OpenStreetMap API 是必需的)
  • app_mail: 你应该在此处设置你的电子邮件(如果使用 API 发生任何错误,OpenStreetMap 可以联系你)

用法

要获取 GeolocationApi 类的实例,只需使用以下代码

$this->get('fkr_nominatim.geolocation_api')->locateAddress('My Street, 8888 MyCity');
$this->get('fkr_nominatim.geolocation_api')->locateAddress(array('My Street', '8888', 'MyCity'));

结果将是

  • null: 如果没有找到任何内容
  • 位置对象:如果只找到一个结果
  • 包含位置对象的数组:如果找到多个结果

许可证

Resources/meta/LICENSE

Nominatim 使用政策

请尊重 Open Street Map 为使用 Geocoding API 指定的 使用政策