作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我正在寻找一种明确的方法来检测访客是否来自中东。如果是,我需要显示不同的标题图片(当前图片中有一只 pig ,所以不受欢迎)。
我可以为此编写 if then else,但我只是在寻找一个简单的函数来检测。这是我用来通过 IP 获取国家/地区的函数:
function get_country_by_ip($ip){
if(!$ip) return false; # Missing parameter
# Pull the XML
$url = 'http://api.hostip.info/?ip='.$ip;
$xml = simplexml_load_file($url);
# Parse the data and store into array
$citystate = explode(", ", $xml->children('gml', true)->featureMember->children()->Hostip->children('gml', true)->name);
$result['city'] = $citystate[0];
$result['state'] = $citystate[1];
$result['country'] = $xml->children('gml', true)->featureMember->children()->Hostip->countryName;
$result['country_abbr'] = $xml->children('gml', true)->featureMember->children()->Hostip->countryAbbrev;
return (object) $result;
}
有人可以帮忙吗?谢谢。
最佳答案
您可以定义哪些国家属于“中东”组 - 通过直接在 PHP 文件或数据库中定义可配置数组,然后检查您的函数返回的给定国家是否在属于“的国家列表中”中东”。以您的示例为例,如下所示:
$middleEast = array(
'Syria',
'Iraq',
... // all the rest
);
$country = get_country_by_ip($ip);
if (in_array($country['country'], $middleEast) {
echo 'Middle East!';
exit;
}
关于php - 如何通过 PHP 检测中东访客?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7667464/
我是一名优秀的程序员,十分优秀!