This package is not installable via Composer 1.x, please make sure you upgrade to Composer 2+. Read more about our Composer 1.x deprecation policy.

GPS coordinates manipulation

0.1 2015-03-28 00:24 UTC

This package is auto-updated.

Last update: 2021-06-15 04:39:23 UTC


Build Status Code Climate Scrutinizer Code Quality Code Coverage Latest Stable Version Total Downloads

Juliangut GPS coordinates manipulation

GPS coordination handler and manipulation library.


Best way to install is using Composer:

php composer.phar require juliangut/gps

Then require_once the autoload file:

require_once './vendor/autoload.php';


// Create a point with or without coordinates
$gpsPoint = new Point();
$gpsPoint = new Point('48° 0.858277778N, 2°0.2945 E'); // Eiffel tower

// Set coordinates together
$gpsPoint->set('41.9, 12.5'); // Rome

// Set separated coordinates for Empire State Building
$this->point->setLatitude('40°44′ 54.3″N');
$this->point->setLongitude('73° 59′9″ W');

echo $gpsPoint->get(Point::FORMAT_DD); // Default if none especified
echo $gpsPoint->get(Point::FORMAT_DM);
echo $gpsPoint->get(Point::FORMAT_DMS);

Available formats

Any of the following formats can be used to set and retrieve GPS coordinates:

  • Decimal Degrees (DD) Point::FORMAT_DD, eg: '41.9,12.5'
  • Decimal Minutes (DM) Point::FORMAT_DM, eg: '48°0.858277778N 2°0.2945E'
  • Degrees Minutes Seconds (DMS) Point::FORMAT_DMS, eg: '40°44′54.3″N,73°59′9″W'


When setting coordinates spaces and comma are completely optional, there is no difference between , 40° 44′ 54.3″ N, 73° 59′ 9″ W and 40°44′54.3″N73°59′9″W

When setting coordinates you can use or ' for minutes and or " for seconds (review raw document to see the difference between them)

When retrieving coordinates won't have any spaces

When retrieving coordinates ' and " will be used for minutes and seconds. Coordinates will be comma separated


Found a bug or have a feature request? Please open a new issue. Have a look at existing issues before

See file


Release under BSD-3-Clause License.

See file LICENSE included with the source code for a copy of the license terms