PHP は IP に基づいて都市切り替えまたはジャンプを実装します

墨辰丷
リリース: 2023-03-31 14:02:01
オリジナル
2658 人が閲覧しました

この記事では主にIPに基づいて都市切り替えやジャンプを実装するためのPHPについて紹介します。興味のある方はぜひ参考にしてください。

既存の 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でセッションとデータベースを操作する方法

以上がPHP は IP に基づいて都市切り替えまたはジャンプを実装しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート