PHP根據IP實現城市切換或跳轉

墨辰丷
發布: 2023-03-31 14:02:01
原創
2658 人瀏覽過

本篇主要介紹PHP根據IP實現城市切換或跳轉,有興趣的朋友參考下,希望對大家有幫助。

根據現有IP位址取得其地理位置(省份,城市等)的方法

function GetIpLookup($ip = ''){  
  if(empty($ip)){  
    return '请输入IP地址'; 
  }  
  $res = @file_get_contents('http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js&ip=' . $ip);  
  if(empty($res)){ return false; }  
  $jsonMatches = array();  
  preg_match('#\{.+?\}#', $res, $jsonMatches);  
  if(!isset($jsonMatches[0])){ return false; }  
  $json = json_decode($jsonMatches[0], true);  
  if(isset($json['ret']) && $json['ret'] == 1){  
    $json['ip'] = $ip;  
    unset($json['ret']);  
  }else{  
    return false;  
  }  
  return $json;  
} 
$ipInfos = GetIpLookup('123.125.114.144'); //baidu.com IP地址  
var_dump($ipInfos);
登入後複製

再發一個簡化版的

function getIpAddress(){  
  $ipContent  = file_get_contents("http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js");  
  $jsonData = explode("=",$ipContent);   
  $jsonAddress = substr($jsonData[1], 0, -1);  
  return $jsonAddress;  
}  
$ip_info=json_decode(getIpAddress());
登入後複製

PHP根據IP位址實現城市切換或跳到

到這裡,其實問題已經很簡單了,用簡單的js就通通搞定。 C段如下:

//根据IP地址跳转指定页面js取得城市
var city=&#39;<?echo ipCity($xp_UserIp);?>&#39;; //根据IP地址所有城市跳转到指定页面
if(city.indexOf("上海市")>=0){
         window.location.href="http://shanghai.demo.com/"; }
登入後複製

將開頭的A段程式碼和上面的C段程式碼分別放在B段程式碼的頭和尾,然後我們在需要跳躍的頁面加入以下程式碼:

<script src="/ipcity/ipaddress.php" type="text/javascript" language="javascript"></script>
登入後複製

刷新頁面,是不是達到預想的效果了呢?

總結:以上就是這篇文章的全部內容,希望能對大家的學習有所幫助。

相關推薦:

PHP中的多態

PHP事件機制的原理

php操作session及資料庫的方法

以上是PHP根據IP實現城市切換或跳轉的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板