GeoTools
PHPGeo
GeoTools | PHPGeo | |
---|---|---|
1 | - | |
1,357 | 1,536 | |
0.3% | - | |
5.1 | 7.5 | |
about 2 months ago | 5 months ago | |
PHP | PHP | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
GeoTools
-
Store values based on geographic data calculation (which polygon is a point within?)
// Loop on all loaded zones_entities /* @var $zone_geofield \Drupal\geofield\Plugin\Field\FieldType\GeoFieldItem */ $zone_geofield = $your_zone_entity->get('field_your_geofield')->getValue(); /* @var \Drupal\geofield\GeoPHP\GeoPHPInterface $geo_php_wrapper */ $geo_php_wrapper = \Drupal::service('geofield.geophp'); // or inserted via DI /* @var \Geometry$polygon*/ $polygon = $geo_php_wrapper->load($zone_geofield->value); /* @var $entity_geofield \Drupal\geofield\Plugin\Field\FieldType\GeoFieldItem */ $entity_geofield = $your_current_entity->get('field_your_geofield')->getValue(); $point = $geo_php_wrapper->load($entity_geofield->value); if( geoPHP::geosInstalled() ) { $in_zone = $polygon->contains($point); } else { // https://github.com/thephpleague/geotools#polygon $geotools_polygon = new \League\Geotools\Polygon\Polygon( $polygon->asArray() ); $geotools_point = \League\Geotools\Coordinate\Coordinate( $point->asArray() ); $in_zone = $geotools_polygon->pointInPolygon( $geotools_point ); } if( $in_zone ) { // Do things like filling a reference field $entity->set('field_ref_' . $your_zone_entity->bundle()', $your_zone_entity->id() ); }
PHPGeo
We haven't tracked posts mentioning PHPGeo yet.
Tracking mentions began in Dec 2020.
What are some alternatives?
GeoCoder - The most featured Geocoder library written in PHP.
GeoJSON - GeoJSON implementation for PHP
Rinvex Country - Rinvex Country is a simple and lightweight package for retrieving country details with flexibility. A whole bunch of data including name, demonym, capital, iso codes, dialling codes, geo data, currencies, flags, emoji, and other attributes for all 250 countries worldwide at your fingertips.
OpenCage Data Geocoding Library for PHP - PHP library to access the OpenCage geocoding API
js-markerwithlabel - Google Maps Marker with Label
milk-sdk-php - Milk SDK PHP is a (fluent) open-source PHP library that makes it easy to integrate your PHP application with location services like Geocode, Route, Isoline, Search Places and Address, location data ...
php-polylabel - PHP port of https://github.com/mapbox/polylabel
GeoTools - Official GeoTools repository