jguittard / zf-geocoder
Zend Framework 的地理编码服务模块
Requires
- php: 5.6 || ^7.0
- php-http/httplug: ^0.1.0
- willdurand/geocoder: ^3.3
- zendframework/zend-config: ^2.6
- zendframework/zend-filter: ^2.7
- zendframework/zend-http: ^2.5
- zendframework/zend-i18n: ^2.7
- zendframework/zend-serializer: ^2.7
- zendframework/zend-servicemanager: ^2.7.5 || ^3.0.3
- zendframework/zend-stdlib: ^2.7 || ^3.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^1.12
- phpunit/phpunit: ~5.5
- squizlabs/php_codesniffer: ~2.3.4
- zendframework/zend-log: ^2.7
- zendframework/zend-test: ~3.0
This package is not auto-updated.
Last update: 2024-09-14 19:58:43 UTC
README
此包允许您在 Geocoder 中使用 Zend Framework。
它与 Zend Framework 2 和 3 的 Service Manager 仍然兼容。
要求
请参阅 composer.json 文件。
安装
运行以下 composer
命令
$ composer require "jguittard/zf-geocoder:~1.0"
或者,手动将以下内容添加到您的 composer.json
文件的 require
部分
"require": { "jguittard/zf-geocoder": "~1.0" }
然后运行 composer update
以确保模块已安装。
最后,将模块名称添加到项目 config/application.config.php
下的 modules
键
return array( /* ... */ 'modules' => array( /* ... */ 'ZF\Geocoder', ), /* ... */ );
或者依赖 Zend Component Installer 自动注入此模块
composer require zendframework/zend-composer-installer:^0.4
配置
将 config/zf.geocoder.local.php.dist
复制到 config/autoload
目录,并移除 dist
扩展名以开始配置。
使用
您可以检索 Geocoder 文档
以下将在此 Zend Framework 模块中处理设置和服务管理。
首先,请确保您已通过注释掉您想要使用的提供者设置好配置文件。
例如,在 config/autoload/zf.geocoder.local.php
return [ 'geocoder' => [ 'httpAdapter' => '<SERVICE_KEY_OF_HTTP_ADAPTER>', 'providers' => [ 'google_maps' => [ 'locale' => 'fr_FR', 'region' => 'Île-de-France', 'useSsl' => false, ], ], ], ];
每个提供者都作为主 Service Manager 中的 服务 公开,遵循以下约定: Geocoder\<PROVIDER_NAME_IN_CAMELCASE>
此服务将是相应的 Geocoder\Provider\<PROVIDER_NAME_IN_CAMELCASE>
的实例,并在构造函数中传递适当的配置
例如,在您的控制器中
public function localeAction() { /* ... */ $geocoder = $this->getServiceLocator()->get('Geocoder\GoogleMaps'); $addressCollection = $geocoder->geocode('10 avenue Gambetta, Paris, France'); /* ... */ }
显然,这种调用是不良的实践。您应该考虑在专用服务中注入 Geocoder 服务,而不是从控制器中调用它
单元测试
确保安装了 dev
依赖项
composer install --dev
运行单元测试
composer test
代码风格检查
composer cs-check
检查两者
composer check