A PHP library for geocoding, coordinate conversion, distance calculation, and other geographic operations.
Geotools is a PHP library for geographic computations, including geocoding, coordinate conversion, distance calculations, and geohash encoding. It solves the problem of handling complex location-based data in PHP applications by providing a unified interface built on reliable libraries like Geocoder and ReactPHP.
PHP developers building location-aware applications, such as mapping services, logistics platforms, or any system requiring geographic data processing.
Developers choose Geotools for its extensive feature set, support for multiple algorithms and formats, and seamless integration with popular geocoding providers through the Geocoder library.
Geo-related tools PHP 7.3+ library built atop Geocoder and React libraries
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Accepts almost all WGS84 coordinate formats and supports 23 ellipsoids, allowing versatile handling of global geographic data as shown in the Coordinate section.
Enables parallel geocoding against multiple providers with PSR-6 caching, optimizing performance for large datasets, as demonstrated in the Batch examples.
Provides four algorithms (flat, great circle, haversine, vincenty) with multiple units, ensuring precision for different use cases, detailed in the Distance section.
Includes CLI for distance, point, geohash, and convert operations, facilitating automation and scripting, with examples in the CLI section.
Built atop the Geocoder library, allowing seamless use of numerous geocoding providers and dumpers, enhancing extensibility.
Requires careful setup to avoid violating geocoding provider Terms of Service, adding legal and operational risks, as warned in the Batch section.
Relies on Geocoder and ReactPHP, which can increase project bloat and introduce compatibility issues, especially with older PHP versions.
The API involves multiple classes and configurations, such as setting up providers and ellipsoids, which can be daunting for newcomers without extensive documentation.
Official integrations are only for older frameworks like Laravel 4 and Silex, lacking updates for current PHP ecosystems, as noted in the Integration section.