這篇文章主要介紹php禁止一個地區(qū)ip的方法,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
創(chuàng)新互聯(lián)堅持“要么做到,要么別承諾”的工作理念,服務領域包括:成都做網(wǎng)站、成都網(wǎng)站設計、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣等服務,滿足客戶于互聯(lián)網(wǎng)時代的富錦網(wǎng)站設計、移動媒體設計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡建設合作伙伴!php禁止一個地區(qū)的實現(xiàn)方法:首先用一個變量保存訪客的IP地址;然后從外界獲取IP地址的詳細信息;接著判斷是否在拒絕訪問的省份范圍內;最后做出相應的響應即可。
PHP 禁止某個地區(qū)的 IP
之前博客有禁止過 江蘇省 全省的 IP 訪問
在后端, 其實使用 PHP 去判斷來訪者的 IP 來源, 并且做出相應的處理
實戰(zhàn)會用到 PHP 的一些常用語法 :
條件判斷
循環(huán)
數(shù)組
超全局變量
除此之外, 還會用到一些系統(tǒng)自帶的函數(shù)
接下來講述一下具體思路 :
1. 用一個變量保存訪客的 IP 地址
2. 從外界獲取 IP 地址的詳細信息
3. 判斷是否在拒絕訪問的省份范圍內
4. 做出相應的響應
首先是保存訪客的 IP, 可以使用超全局變量 $_SERVER 獲取訪客的 IP 地址
$ip = $_SERVER['REMOTE_ADDR'];
用一個數(shù)組保存禁止訪問的省份
$verification = array("xx省", "xx省", ...);
使用淘寶 IP 庫, 將淘寶 IP 庫(省準確度超過 99.8%, 市準確度超過 96.8%)的頁面中所有的信息保存在一個字符串中
$result = file_get_contents("http://ip.taobao.com/service/getIpInfo.php?ip=".$ip);
其中, file_get_contents() 函數(shù)將一個文件中的所有字符串保存在一個字符串中
在網(wǎng)頁中, PHP 顯示的是最終的代碼返回值, 而不是顯示 PHP 代碼, 這與前端有所不同
保存在字符串中的很難直接拿來比較, 所以要對字符串進行處理, 最好變成一個變量
$ipInformation = json_decode($result, true);
json_decode() 函數(shù)將一個 JSON 形式的字符串轉換為 PHP 變量, 這里是轉化為一個二維關聯(lián)數(shù)組
$address['data']['region'] 返回的就是 IP 的中文省份
最后用循環(huán)和條件判斷處理拒絕訪問
最后的代碼 :
其中, TODO 中就是你對于在范圍內的 IP 如何處理, 例如可以直接 die(); 來禁止頁面顯示
以上是php禁止一個地區(qū)ip的方法的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注創(chuàng)新互聯(lián)-成都網(wǎng)站建設公司行業(yè)資訊頻道!