Hauptmenü

Werkzeuge

Kategorien

Archiv

Tineco nass und trockensauger Einhell Shelly H&T Gen3 Liste von RTSP URLs für gängige Kameras

Längen und Breitengrad als FLOAT Werte aus EXIF Daten

Erstellt in PHP am 2. Januar 2015 vom Daschmi

Um mittels PHP die Längen- und Breitengrade aus einer Datei mit EXIF Metadaten zu extrahieren, können folgende Funktionen verwendet werden:

    function ds_gps2Num($coord)
{

$arParts = explode(‚/‘, $coord);

if (sizeof($arParts) <= 0) return 0;
else if (sizeof($arParts) == 1) return $arParts[0];
else return (floatval($arParts[0]) / floatval($arParts[1]));

}

function ds_getGps($exifCoord, $h)
{

$deg = ((sizeof($exifCoord) > 0)?ds_gps2Num($exifCoord[0]):0);
$min = ((sizeof($exifCoord) > 1)?ds_gps2Num($exifCoord[1]):0);
$sec = ((sizeof($exifCoord) > 2)?ds_gps2Num($exifCoord[2]):0);

return (($h == ‚W‘ || $h == ‚S‘)?-1:1) * ($deg + $min / 60 + $seconds / 3600);

}

Der Aufruf erfolgt dann beispielsweise so:

$exif = exif_read_data($filepath, ‚ANY_TAG‘);
$image_longitude = ds_getGps($exif["GPSLongitude"], $exif[‚GPSLongitudeRef‘]);
$image_latitude = ds_getGps($exif["GPSLatitude"], $exif[‚GPSLatitudeRef‘]);