PackageTrack
Sign in Get early access

mjaschen/phpgeo

Simple Yet Powerful Geo Library

6.0.4 9.6M downloads/mo #1711 most downloaded on Packagist mjaschen/phpgeo

What this package is like to depend on

Last release 17 days ago

06 Aug 2026

Release timing varies

gaps range from 3 weeks to 1.4 years

Most releases are documented

notes for 41 of 54 stable releases

Nothing withdrawn

no release was ever pulled

14 years old

54 releases · first in 2013

4 releases in the last 12 months

see the full history below

Release timeline

54 releases · Feb 2013 to Aug 2026
2014 2016 2018 2020 2022 2024 2026
Release Pre-release

Releases

latest 54
  1. 6.0.4 06 Aug 2026
    Release notes

    update uv install action version string

    Open source →
  2. 6.0.3 06 Aug 2026

    Nothing published for this version

  3. 6.0.2 02 Dec 2025

    Nothing published for this version

  4. 6.0.1 07 Nov 2025
    Release notes

    update change log + README

    Open source →
  5. 6.0.0 12 Jan 2025
    Release notes

    change command for static analysis in CI

    Open source →
  6. 5.0.0 07 Dec 2023

    Nothing published for this version

  7. 4.2.1 03 Dec 2023
    Release notes

    use proper variable as index for array access

    Open source →
    Release notes

    Changed

    • use proper variable as index for array access
    Open source →
  8. 4.2.0 25 Jul 2022
    Release notes

    Merge fix/github-92 into master

    Open source →
    Release notes

    Changed

    • point-to-line distance is calculated iteratively now, fixes #92
    • improved intersection checking for polygon/polygon
    Open source →
  9. 4.1.0 04 Jun 2022
    Release notes

    This release has no breaking changes.

    Thanks, @nilshoerrmann, for contributing!

    Added

    • method Bounds::getAsPolygon() which returns a polygon containing the four nodes of the Bounds instance
    • methods Bounds::getNorthEast() and Bounds::getSouthWest()
    • new public methods: CardinalDirection::isStrictlyNorth(), CardinalDirection::isStrictlyEast(), CardinalDirection::isStrictlySouth() and CardinalDirection::isStrictlyWest()
    • new class Direction for checking if one point is north, eat, south or west from another point
    • new Class Intersection for checking if two geometries intersect each other
    Open source →
  10. 4.0.0 29 Nov 2021
    Release notes

    Changed

    • drop support for PHP 7.2 breaking change
    • add support for PHP 8.1
    • add deprecations for setter methods in DMS and Line classes
    Open source →
  11. 3.2.1 04 Mar 2021
    Release notes

    Fixed

    • Division by zero in SimplifyBearing if two consecutive points share the same location, fixes #79.
    Open source →
  12. 3.2.0 09 Oct 2020
    Release notes

    Added

    Changed

    • change static to self to prevent accidentally calling the constructor with wrong arguments in child classes (Ellipsoid, Line, Polygon, Polyline)
    Open source →
  13. 3.1.0 24 Jul 2020
    Release notes

    Added

    • Simplifying polygons is now supported as well, see simplifyGeometry() methods in SimplifyBearing and SimplifyDouglasPeucker classes (fixes #69).
    Open source →
  14. 3.0.1 18 May 2020
    Release notes

    Fixed

    • #68 CoordinateFactory emitted a warning if a coordindates string without arc seconds was passed to the fromString() method
    Open source →
  15. 3.0.0 07 Feb 2020
    Release notes

    Changed

    • phpgeo requires PHP >= 7.2 now
    • backwards compatibility breaking: fix double space in Ellipsoid Name World␣Geodetic␣System␣␣1984World␣Geodetic␣System␣1984 (#49)
    • updated tests for PHPUnit 8

    Added

    • class constant visibiliy modifiers

    Removed

    • support for PHP 7.0 and PHP 7.1 from Travis CI config
    Open source →
  16. 2.6.1 04 Mar 2021

    Nothing published for this version

  17. 2.6.0 05 Feb 2020
    Release notes

    Added

    • method getIntermediatePoint() to the Line class which calculates an intermediate point on a line by following the Great Circle between the two line ends and dividing the line by the given fraction (0.0 ... 1.0)
    Open source →
  18. 2.5.0 04 Feb 2020
    Release notes

    Added

    • method getMidpoint() to the Line class which calculates the midpoint of a line by following the Great Circle between the two line ends and dividing the line into two halves.
    • utility class Cartesian which abstracts three-dimensional cartesian coordinates x, y, and z
    Open source →
  19. 2.4.1 29 Jan 2020
    Release notes

    Changed

    • access modifier for the tolerance attribute is now protected (SimplifyDouglasPeucker)
    Open source →
  20. 2.4.0 27 Jan 2020
    Release notes

    Added

    • BoundsFactory to create a bounds instance for a center point and a given distance to the bounds' corners. Thanks @sdennler!
    Open source →
  21. 2.3.1 21 Dec 2019
    Release notes

    Fixed

    • improve precision in PointToLineDistance
    Open source →
  22. 2.3.0 19 Dec 2019
    Release notes

    Added

    • PointToLineDistance calculates the smallest distance between a point and a line
    Open source →
  23. 2.2.0 25 Nov 2019
    Release notes

    Added

    • hasSameLocation() checks if two points share the same location (optionally within a distance which defaults to 0.001 m = 1 mm)
    • addUniquePoint adds unique points to a polyline (i.e., points that doesn't already exist in that polyline)
    • getAveragePoint() returns the average value of latitude and longitude values for a polyline

    Fixed

    • wrongly placed parenthesis in Polygon::contains()
    Open source →
  24. 2.1.0 21 Mar 2019
    Release notes

    Added

    • The bounds for a Polyline can now be retrieved in form of a Bound object.

    Changed

    • The auto-loader is now PSR-4 compatible; directory structure was flattened by one level.
    Open source →
  25. 2.0.5 27 Feb 2019
    Release notes

    Changed

    • improvements to the Douglas-Peucker processor. Thanks @iamskey!
    Open source →
  26. 2.0.4 25 Dec 2018

    Nothing published for this version

  27. 2.0.3 19 Jul 2018
    Release notes

    Fixed

    • Links to documentation in README. Thanks @JonathanMH

    Changed

    • better floating point number comparisons in Vincenty
    • add exception message in Vincenty
    • type-cast regexp matches before doing calculations in CoordinateFactory
    Open source →
  28. 2.0.2 27 Mar 2018
    Release notes

    Added

    • Information on how to run checks and tests for developers in the README.

    Changed

    • Updated internal stuff like type and return hints after running a static analysis.
    • Updated some PHPDoc blocks after running a static analysis.

    Fixed

    • Wrongly typed return value in BearingEllipsoidal::inverseVincenty().
    Open source →
  29. 2.0.1 16 Feb 2018
    Release notes

    Added

    • new supported format for coordinates parser. Thanks to @petrknap
    Open source →
  30. 2.0.0 27 Sep 2017
    Release notes

    Changed

    • License: phpgeo is now distributed under the MIT license
    • phpgeo requires at least PHP 7.0

    Removed

    • deprecated class Simplify was removed; alternatives: SimplifyBearing or SimplifyDouglasPeucker
    • PHP versions 5.4, 5.5, and 5.6 are no longer supported
    Open source →
  31. 1.3.8 05 Jul 2017
    Release notes

    Fixed

    • Area calculation for polygons works now. Thanks to @felixveysseyre
    Open source →
  32. 1.3.7 01 Jul 2017
    Release notes

    Fixed

    • GeoJSON output for polygon is now compliant with RFC 7946. Thanks to @arsonik
    Open source →
  33. 1.3.6 30 Aug 2016

    Nothing published for this version

  34. 1.3.5 19 Aug 2016
    Release notes

    Added

    • add method for calculating the final bearing for a Line object
    Open source →
  35. 1.3.4 16 Aug 2016

    Nothing published for this version

  36. 1.3.3 16 Aug 2016
    Release notes

    Fixed

    • bugifx for a division-by-zero error which occurred when symplifying a polyline with the Douglas-Peucker algorithm.
    Open source →
  37. 1.3.2 28 Mar 2016
    Release notes

    Added

    • add an utility class to calculate the perpendicular distance between a point and a line; documentation
    Open source →
  38. 1.3.1 26 Mar 2016
    Release notes

    Added

    • add method to calculate the bearing of a Line instance (point 1 -> point 2)
    Open source →
  39. 1.3.0 26 Mar 2016
    Release notes

    Added

    • A new SimplifyInterface was introduced and is implemented in two classes: SimplifyDouglasPeucker and SimplifyBearing
    • Added documentation

    Deprecated

    • The Simplify processor class is now deprecated and will be removed in the 2.0 release.
    Open source →
  40. 1.2.1 15 Mar 2016
    Release notes

    Added

    • Added functionality to change the direction of Polygon instances
    • Added documentation
    Open source →
  41. 1.2.0 14 Mar 2016
    Release notes

    Added

    • Added geofence check for arbitrary geometry objects
    • Extended and updated documentation
    Open source →
  42. 1.1.1 13 Mar 2016
    Release notes

    Added

    • Added formatter for "Decimal Minutes" format, e.g. 43° 37.386' N, 070° 12.472' W
    • Added documentation for the new formatter
    Open source →
  43. 1.1.0 12 Mar 2016
    Release notes

    Added

    • Added calculation of the bearing angle between two points (initial and final bearing)
    • Added calculation of the destination point for a given starting point, the bearing angle, and the distance
    • Support for spherical and ellipsoidal algorithms for the described bearing calculations
    • Added documentation for the bearing calculations
    Open source →
  44. 1.0.4 11 Mar 2016
    Release notes

    Added

    • Added functionality to change the direction of Line/Polyline instances
    • Added documentation
    Open source →
  45. 1.0.3 10 Mar 2016
    Release notes

    Added

    • Added documentation sources in mkdocs format. Documentation is now available online at http://phpgeo.marcusjaschen.de/
    Open source →
  46. 1.0.2 04 Mar 2016
    Release notes

    Changed

    • several optimizations in control structures
    Open source →
  47. 1.0.1 11 Feb 2016

    Nothing published for this version

  48. 1.0.0 11 Feb 2016
    Release notes

    Added

    • Added license information. phpgeo is now licensed under the GPL 3. (see issue #8)
    Open source →
  49. 0.3.0 29 Oct 2015
    Release notes

    Added

    • added the new Polyline class (thanks @paulvl)
    Open source →
  50. 0.2.3 17 Dec 2014

    Nothing published for this version

  51. 0.2.2 09 Dec 2014

    Nothing published for this version

  52. v0.2.1 09 Oct 2013

    Nothing published for this version

  53. v0.2.0 07 Jul 2013

    Nothing published for this version

  54. v0.1.0 18 Feb 2013

    Nothing published for this version

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive