不知道大家在做一些專案開發的時候,有沒有要用到要獲取用戶的即時位置,特別是一些大型的網站,網站獲取用戶的本地資訊就很關鍵,這些網站在用戶訪問的時候會自己判斷用戶所在
地的信息,然後可以跳到相應的分站上面,這樣給用戶的體驗很好,而不是全國各地的用戶全部都來訪問北京站或者上海站。
利用PHP獲取訪客所在地位置在大型站點中的應用很廣,今天,小編就帶領大家製作這樣的一個小功能,當然首先就要考慮使用第三方的IP接口,目前,大一點的IP介面有淘寶,新浪,網
易,QQ等,最後選擇了新浪IP歸屬地的API,使用上面也很簡單,利用獲取到的IP地址,使用新浪接口,返回一個狀態碼,然後依狀態碼取得使用者所在位置的位置,然後再進行各地區顯
示不同內容的判斷。
PHP的程式碼如下:
<?php $ip = "218.192.3.42"; $json = file_get_contents("http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip=".$ip); $json = json_decode($json, true); echo "IP地址:".$ip;//www.php.cn echo "归属地:".$json["country"].$json["province"].$json["city"].$json["district"].$json["isp"]; ?>
JS程式碼如下:
<script type="text/javascript" src="http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js" charset="utf-8"></script> <script type="text/javascript"> alert(remote_ip_info.country+" "+remote_ip_info.city); </script>
我們主要使用的是PHP的程式碼,這裡的IP位址是固定的,如果想要取得訪客的IP位址,直接改為IP位址$ip = $_SERVER["REMOTE_ADDR"]; 就可以了,下面再貼一段根據地區不同顯示不同內
容的PHP代碼,如下:
<?php $ip = $_SERVER["REMOTE_ADDR"]; $json = file_get_contents("http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip=".$ip); $json = json_decode($json, true); if($json["province"]=="安徽"){ echo "document.writeln(\"安徽");\n"; }//www.php.cn if($json["province"]=="河南"){ echo "document.writeln(\"河南");\n"; } ?>
容的PHP代碼,如下:
<script type="text/javascript" src="ip.php?action=test"></script>
容代碼沒怎麼整理與優化,在輸出的時候,我這裡輸出了JS,這裡可以更改為任何內容,甚至是跳轉網址,另外,如果想要在靜態頁面中使用的話,也很簡單,只要JS包含就可以了,代
碼如下:
rrreee🎜🎜🎜action 是傳遞的參數,如果沒有用的話,可以刪除掉。 🎜