本篇文章為大家展示了使用PHP怎么根據(jù)ip調(diào)用新浪api獲取城市名,內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過(guò)這篇文章的詳細(xì)介紹希望你能有所收獲。

功能:
1,獲取當(dāng)前IP地址,
2,調(diào)用新浪API,獲取到當(dāng)前城市。
3,將中文轉(zhuǎn)換為拼音后跳轉(zhuǎn)。
復(fù)制代碼 代碼如下:
<?php
 include './pinyin.php';
//獲取當(dāng)前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;
 }
 //當(dāng)前ip地址
 $currentIP = getIp();
 //通過(guò)當(dāng)前ip獲取信息
 $getLocation = getLocation($currentIP);
 $currentInfo = json_decode($getLocation, true); 
 //判斷ip是否為有效
 if($currentInfo['ret'] == '-1')
 {
  $currentInfo['city'] = 'unknown';
 }
 //當(dāng)前城市中文名
 $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;
 }
 //重定向?yàn)g覽器
 header("Location: https://www.yisu.com");
 exit;
上述內(nèi)容就是使用PHP怎么根據(jù)ip調(diào)用新浪api獲取城市名,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
                新聞名稱:使用PHP怎么根據(jù)ip調(diào)用新浪api獲取城市名-創(chuàng)新互聯(lián)
                
                文章網(wǎng)址:http://chinadenli.net/article8/dijsip.html
            
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、品牌網(wǎng)站設(shè)計(jì)、網(wǎng)站改版、App設(shè)計(jì)、App開(kāi)發(fā)、用戶體驗(yàn)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容
