1tomany / php-geocoder
A simple framework-independent geocoding library
v0.0.4
2026-09-02 06:26 UTC
Requires
- php: >=8.5
- fakerphp/faker: ^1.24
- phpdocumentor/reflection-docblock: ^5.6|^6.0.3
- symfony/http-client: ^7.2|^8.0|^8.1
- symfony/serializer: ^7.2|^8.0|^8.1
- symfony/string: ^7.2|^8.0|^8.1
- symfony/validator: ^7.2|^8.0|^8.1
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.93
- phpstan/phpstan: ^2.1.55
- phpunit/phpunit: ^13.1.11
Suggests
None
Provides
None
Conflicts
None
Replaces
None
This package is auto-updated.
Last update: 2026-09-02 06:27:27 UTC
README
This package provides a simple framework-independent geocoding library.
Installation
Install the library using Composer:
composer require 1tomany/php-geocoder
Symfony Bundle
A Symfony bundle is available if you wish to integrate this library into your Symfony applications with autowiring and configuration support.
Supported platforms
- Mock
Usage
<?php use OneToMany\Geocoder\Bridge\Google\GoogleProvider; use OneToMany\Geocoder\Bridge\Mock\MockProvider; use OneToMany\Geocoder\Bridge\Transport; use OneToMany\Geocoder\GeocodingClient; use OneToMany\Geocoder\GeocodingVendor; use OneToMany\Geocoder\Resource\ForwardGeocode; use OneToMany\Geocoder\Resource\ReverseGeocode; $transport = new Transport( createSymfonyHttpClient(), createSymfonySerializer(), ); $googleApiKey = getenv('GOOGLE_API_KEY'); $client = new GeocodingClient([ new GoogleProvider( $transport, $googleApiKey, ), new MockProvider(), ]); $response = $client->forward( GeocodingVendor::Google, new ForwardGeocode( '123', 'Main Street', null, 'Dallas', '75205', 'TX', 'US', ), ); $response = $client->reverse( GeocodingVendor::Google, new ReverseGeocode( '32.10391494', '-96.3931030', ), );
Credits
License
The MIT License