要根据IP地址获取城市,可以使用IP库来进行查询。以下是一个使用GeoIP2库的示例代码:

<?php
require_once 'vendor/autoload.php';

use GeoIp2\Database\Reader;

$ipAddress = $_SERVER['REMOTE_ADDR'];

$databaseFile = 'path/to/GeoLite2-City.mmdb';
$reader = new Reader($databaseFile);

try {
    $record = $reader->city($ipAddress);
    
    $city = $record->city->name;
    $country = $record->country->name;
    $latitude = $record->location->latitude;
    $longitude = $record->location->longitude;
    
    echo "City: $city\n";
    echo "Country: $country\n";
    echo "Latitude: $latitude\n";
    echo "Longitude: $longitude\n";
} catch (Exception $e) {
    echo 'Error: ' . $e->getMessage();
}
?>

请注意,此示例假设您已经安装了GeoIP2库并将数据库文件路径设置为正确的值。您可以通过GeoLite2网站下载GeoLite2-City数据库文件

php根据ip获取城市

原文地址: https://www.cveoy.top/t/topic/hy6z 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录