当前位置:网站首页 > 更多 > 站长帮 > 正文

[趣味代码] PHP显示用户所在国家,省份以及城市代码

作者:CC下载站 日期:2018-10-10 01:44:29 浏览:1562 分类:站长帮

[趣味代码] PHP显示用户所在国家,省份以及城市代码

<?php
//显示用户所在国家,省份以及城市
function id_getip(){
if(getenv("HTTP_CLIENT_IP")&& strcasecmp(getenv("HTTP_CLIENT_IP"),"unknown")){
   $ip = getenv("HTTP_CLIENT_IP");
}elseif(getenv("HTTP_X_FORWARDED_FOR")&& strcasecmp(getenv("HTTP_X_FORWARDED_FOR"),"unknown")){
   $ip = getenv("HTTP_X_FORWARDED_FOR");
}elseif(getenv("REMOTE_ADDR")&& strcasecmp(getenv("REMOTE_ADDR"),"unknown")){
   $ip = getenv("REMOTE_ADDR");
}elseif(isset ($_SERVER['REMOTE_ADDR'])&& $_SERVER['REMOTE_ADDR']&& strcasecmp($_SERVER['REMOTE_ADDR'],"unknown")){
   $ip = $_SERVER['REMOTE_ADDR'];
}else{
   $ip ="unknown";
}
return $ip;
}
function id_getLocation($ip=''){
 empty($ip)&& $ip = id_getip();
if($ip=="127.0.0.1")return"本机地址";
 $api ="http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip=$ip";
 $json =@file_get_contents($api);//调用新浪IP地址库 
 $arr = json_decode($json,true);//解析json
 $country = $arr['country'];//取得国家
 $province = $arr['province'];//获取省份 
 $city = $arr['city'];//取得城市
if((string)$country =="中国"){
if((string)($province)!=(string)$city){
   $_location = $province.$city;
}else{
   $_location = $country.$city;
}
}else{
  $_location = $country;
}
return $_location;
}
?>

然后在你需要显示的地方调用:欢迎您,来自<?php echo id_getLocation();?>的朋友!


您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯