根据ip调用新浪api获取城市名并转成拼音_PHP
Jun 01, 2016 am 11:55 AM功能:
1,获取当前IP地址,
2,调用新浪API,获取到当前城市。
3,将中文转换为拼音后跳转。
复制代码 代码如下:
include './pinyin.php';
//获取当前ip
function getIp(){
$onlineip='';
if(getenv('HTTP_CLIENT_IP')&&strcasecmp(getenv('HTTP_CLIENT_IP'),'unknown')){
$onlineip=getenv('HTTP_CLIENT_IP');
} elseif(getenv('HTTP_X_FORWARDED_FOR')&&strcasecmp(getenv('HTTP_X_FORWARDED_FOR'),'unknown')){
$onlineip=getenv('HTTP_X_FORWARDED_FOR');
} elseif(getenv('REMOTE_ADDR')&&strcasecmp(getenv('REMOTE_ADDR'),'unknown')){
$onlineip=getenv('REMOTE_ADDR');
} elseif(isset($_SERVER['REMOTE_ADDR'])&&$_SERVER['REMOTE_ADDR']&&strcasecmp($_SERVER['REMOTE_ADDR'],'unknown')){
$onlineip=$_SERVER['REMOTE_ADDR'];
}
return $onlineip;
}
//获取城市信息api
function getLocation($ip){
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip=".$ip);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 30);
$str = curl_exec($curl);
curl_close($curl);
return $str;
}
//当前ip地址
$currentIP = getIp();
//通过当前ip获取信息
$getLocation = getLocation($currentIP);
$currentInfo = json_decode($getLocation, true);
//判断ip是否为有效
if($currentInfo['ret'] == '-1')
{
$currentInfo['city'] = 'unknown';
}
//当前城市中文名
$currentCityName = $currentInfo['city'];
$currentCityEName = $pin->Pinyin("$currentCityName",'UTF8');
//城市拼音多音字
switch($currentCityEName)
{
case 'zhongqing':
$currentCityEName = 'chongqing';
break;
case 'shenfang':
$currentCityEName = 'shifang';
break;
case 'chengdou':
$currentCityEName = 'chengdu';
break;
case 'yueshan':
$currentCityEName = 'leshan';
break;
case 'junxian':
$currentCityEName = 'xunxian';
break;
case 'shamen':
$currentCityEName = 'xiamen';
break;
case 'zhangsha':
$currentCityEName = 'changsha';
break;
case 'weili':
$currentCityEName = 'yuli';
break;
case 'zhaoyang':
$currentCityEName = 'chaoyang';
break;
case 'danxian':
$currentCityEName = 'shanxian';
break;
default:
$currentCityEName = $pin->Pinyin("$currentCityName",'UTF8');
break;
}
//重定向浏览器
header("Location: http://www.bitsCN.com");
exit;

Artikel Panas

Alat panas Tag

Artikel Panas

Tag artikel panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Bagaimanakah tapak web menetapkan sekatan IP hitam/senarai putih dan sekatan akses IP negara dan bandar melalui nginx?

Bagaimana untuk menyemak alamat IP pada WeChat

Bagaimana untuk menetapkan senarai putih direktori dan senarai putih ip dalam nginx

Bagaimana untuk mendapatkan alamat IP sebenar pengguna berdasarkan proksi terbalik nginx

Apakah yang perlu saya lakukan jika wifi saya tidak menunjukkan peruntukan IP?
