popphp/pop-geo

该包已 废弃 并不再维护。未建议替代包。

Pop PHP 框架的 Pop Geo 组件

2.1.0p1 2016-07-08 04:52 UTC

This package is auto-updated.

Last update: 2022-02-01 12:42:28 UTC


README

Build Status Coverage Status

生命周期结束

由于 PHP 7 不支持 GeoIP 扩展,v2.1.0 版本的 pop-geo 组件现已生命周期结束,将不再提供支持。

概述

pop-geo 是一个组件,用于利用 GeoIP 数据库并计算 IP 位置信息以及经纬度点集之间的距离。

pop-geoPop PHP 框架 的一个组件。

安装

使用 Composer 安装 pop-geo

composer require popphp/pop-geo

基本使用

如果已安装 GeoIP 扩展和数据库,它将自动根据 IP 检测信息。

use Pop\Geo\Geo;

$nola = new Geo();

echo $nola->getLatitude();  // 29.9546500
echo $nola->getLongitude(); // -90.0750700
计算点集之间的距离

您可以提供第二组坐标来计算它们之间的距离

$houston = new Geo([
    'latitude'  => 29.7632800,
    'longitude' => -95.3632700
]);

echo $nola->distanceTo($houston);          // Outputs '317.11' miles
echo $nola->distanceTo($houston, 2, true); // Outputs '510.34' kilometers

您也可以手动提供两组点

use Pop\Geo\Geo;

$nola = [
    'latitude'  => 29.9546500,
    'longitude' => -90.0750700
];

$houston = [
    'latitude'  => 29.7632800,
    'longitude' => -95.3632700
];

echo Geo::calculateDistance($nola, $houston); // Outputs '317.11' miles