我想在我的网站上显示用户/访问者的国旗。
我正在使用不同的技术,如 php、jsp 和简单的 html。所以我想要一个代码,通过放置在我的网站上,访问者可以看到它应该在所有平台上运行。
简而言之,我想要国家检测 API。如果有人可以帮助我,我将非常感激。
资源 :
<a href="http://www.shorter.in/#flag" target="_blank"><img src="http://shorter.in/flag.php"></a>
上面给出的代码示例。
一只忙碌的猫 http://shorter.in/flag.php
我想这就是你要找的。
Yeah there is something already available and you don't have to reinvent the wheel.
Check this thing out.
http://api.hostip.info/flag.php?ip=12.215.42.19
Grab your user's IP using PHP and pass it to the API.
<?php
$ip=$_SERVER['REMOTE_ADDR'];
?>
<?php
$ip=$_SERVER['REMOTE_ADDR'];
echo "<img src='http://api.hostip.info/flag.php?ip=$ip' />";
?>
我的服务ipdata.co在https://api.ipdata.co上提供 IP 地理定位 API,并在例如 https://ipdata.co/flags/cu.png 上提供标志。
你所要做的就是知道你的访问者所在国家的iso代码,你可以填写它
ipdata.co/flags/country-code.png
您当然可以通过调用https://api.ipdata.co/user-ip来获取用户的国家代码。
样品嵌入;
<img src="https://ipdata.co/flags/us.png" alt="US Flag">
给
编辑
我们现在还为您提供国家 emoji 标志和国家 emoji unicode。
Get the IP of visitor.
if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
$ip = $_SERVER['HTTP_CLIENT_IP'];
} elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
} else {
$ip = $_SERVER['REMOTE_ADDR'];
}
Use ip2location to find the country of the user.
Compare the resulting country to a list of images and display the matching image. I suggest using a database to store the country name and the path to the associated image.
您可以使用GeoIP 扩展,然后将相关国家/地区映射到给定图标。
$countryName = geoip_country_name_by_name($_SERVER['REMOTE_ADDR']);
echo $countryName;
请注意,通过 IP 获取国家/地区并不准确。