PHP Conference Japan 2024

geoip_country_code_by_name

(PECL geoip >= 0.2.0)

geoip_country_code_by_name获取两位字母的国家代码

描述

geoip_country_code_by_name(string $hostname): string

geoip_country_code_by_name() 函数将返回与主机名或 IP 地址对应的两位字母国家代码。

参数

hostname

要查找位置的主机名或 IP 地址。

返回值

成功时返回两位字母的 ISO 国家代码,如果数据库中找不到该地址,则返回false

示例

示例 #1 geoip_country_code_by_name() 示例

这将打印主机 example.com 的位置。

<?php
$country
= geoip_country_code_by_name('www.example.com');
if (
$country) {
echo
'该主机位于:' . $country;
}
?>

以上示例将输出

This host is located in: US

注释

警告

请参阅 » http://www.maxmind.com/en/iso3166 以获取可能的返回值完整列表,包括特殊代码。

参见

添加注释

用户贡献的注释 1 条注释

0
mikep
9 个月前
自 2016 年起,PHP pecl geoip v1.1.1 https://pecl.php.net/package-changelog.php?package=geoip&release=1.1.1 支持 3 个新函数 geoip_country_code_by_name_v6()、geoip_country_code3_by_name_v6() 和 geoip_country_name_by_name_v6(),但不幸的是,官方 PHP 文档中未提及这些函数:https://php.net/manual/en/ref.geoip.php 这些函数需要 GeoIPv6.dat 文件。请注意,不支持 IPv6 的城市信息。

$countryCode = (strpos($ip, ":") === false) ? geoip_country_code_by_name($ip) : geoip_country_code_by_name_v6($ip);

https://stackoverflow.com/questions/30113161/getting-ipv6-support-with-php5-geoip-and-maxmind-database
To Top