behinlab/mapir

该软件包最新版本(dev-main)没有提供许可证信息。

自定义Map.ir API

dev-main 2021-04-10 11:15 UTC

This package is not auto-updated.

Last update: 2024-09-23 02:54:32 UTC


README

map.ir官方Laravel软件包

最新稳定版本 总下载量 许可证 月下载量 日下载量 服务文档

您好,如果您在map.ir有账户,可以使用此软件包进行Laravel开发。

如何安装

 composer require shiveh/mapir 
 php artisan vendor:publish --tag=mapir

设置

Laravel安装

将此行添加到您的app.php提供者

 Shiveh\Mapir\MapirLaravelServiceProvider::class,

并将此行添加到您的app.php别名

'Mapir' => Shiveh\Mapir\MapirLaravelFacade::class,

发布软件包文件后,您必须打开config文件夹中的mapir.php并设置API密钥。

如下所示

'webservice-url' => env('MAPIR_WEBSERVICE_URL','https://map.ir'),
'api-key' => env('MAPIR_API_KEY','Your map.ir api key'),

Lumen安装

在bootstrap/app.php中添加软件包服务提供者。

$app->register(Shiveh\Mapir\MapirLaravelServiceProvider::class);
class_alias(Shiveh\Mapir\MapirLaravelFacade::class, 'Mapir');

将软件包配置目录vendor/shiveh/mapir/config复制到根目录中,与app目录并列。

更新bootstrap/app.php,在注册配置文件部分添加此行

$app->configure('mapir');

通过在bootstrap/app.php中取消注释此行,使Lumen通过外观工作。

$app->withFacades();

注意

您可以在.env文件中设置密钥

如下所示

 MAPIR_WEBSERVICE_URL=https://map.ir

 MAPIR_API_KEY=your api-key

方法

Mapir::search()

  \Mapir::search(
          'ساوجینیا',
          Select::POI,
          Filter::distance('20km'),
          [
              "type"=> "Point",
              "coordinates"=> [
                  51.3361930847168,
                  35.7006311416626
              ]
          ]
      );

搜索方法有四个参数。

文本(必需)

此参数用作文本,您想找到其在地图上的位置。例如(ساوجینیا)

选择(可选)

为了将您的搜索请求应用于特定实体的组。

 Select :: POI

要选择这些土地效果中的每一个,首先写入"Select::"然后根据以下表格写出土地效果的名字

过滤器(可选)

为了过滤搜索结果,例如,只获取德黑兰的结果。

Filter :: city ('تهران')

更多过滤功能

地理坐标(必需)

使用此格式进行坐标,以便获得更好的结果。在此网站上查找其他可能的格式 geojson.io

[
  "type"=> "Point",
  "coordinates"=> [
             51.3361930847168,
             35.7006311416626
    ]
]

Mapir::searchAutocomplete()

\Mapir::searchAutocomplete(
        'ساوجی',  
        Select::POI,
        Filter::distance('20km'),
        [
            "type"=> "Point",
            "coordinates"=> [
                51.3361930847168,
                35.7006311416626
            ]
        ]
    );

与普通搜索相比,搜索(实时搜索)在搜索词结构的概念上有所不同。当使用普通搜索时,搜索算法寻找与输入文本完全相同的地址,而实时搜索匹配输入信息的一些现有数据,并建议最接近和最可能的结果。

Mapir::reverse()

   \Mapir::reverse(35.732634, 51.422571);

反向是将地理坐标转换为文本地址

Mapir::fastReverse()

   \Mapir::fastReverse(35.732634, 51.422571);

这两种不同类型的寻址方式在细节和响应速度上有所不同。在完整模式下,除了地址的详细信息外,如果地图上已注册该地点的坐标,响应中还会返回已注册的地点名称,而在此功能的快速状态下,这一功能不存在。快速寻址的主要优势是其速度,因此其响应时间约为20毫秒,而在完整匹配模式下,这约为70毫秒。

许可证

FOSSA Status