色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

PHP 中檢查或過濾IP地址的實現(xiàn)代碼

你可以通過增加一個配置文件,然后將需要禁止的一些 IP 地址通過一定規(guī)則添加到配置文件中,在程序初始化的時候,讀取配置文件中的每個規(guī)則,然后通過本文提供的方法去檢查當前訪問的客戶端 IP 地址是否存在于這些規(guī)則中,如果存在,則拒絕提供服務。
復制代碼 代碼如下:
<?php
/**
* php 中檢查或過濾 IP 地址
*
* 支持 IP 區(qū)間、CIDR(Classless Inter-Domain Routing)及單個 IP 格式
* 整理:http://www.CodeBit.cn
* 參考:
* - {@link http://us2.php.NET/manual/zh/function.ip2long.php#70055}
* - {@link http://us2.php.NET/manual/zh/function.ip2long.php#82397}
*
* @param string $NETwork 網(wǎng)段,支持 IP 區(qū)間、CIDR及單個 IP 格式
* @param string $ip 要檢查的 IP 地址
* @return boolean
*/
function NETMatch($NETwork, $ip) {
$NETwork = trim($NETwork);
$ip = trim($ip);
$result = false;
// IP range : 174.129.0.0 - 174.129.255.255
if (false !== ($pos = strpos($NETwork, "-"))) {
$from = ip2long(trim(substr($NETwork, 0, $pos)));
$to = ip2long(trim(substr($NETwork, $pos+1)));
$ip = ip2long($ip);
$result = ($ip >= $from and $ip <= $to);
// CIDR : 174.129.0.0/16
} else if (false !== strpos($NETwork,"/")) {
list ($NET, $mask) = explode ('/', $NETwork);
$result = (ip2long($ip) & ~((1 << (32 - $mask)) - 1)) == ip2long($NET);
// single IP
} else {
$result = $NETwork === $ip;
}
return $result;
}
// 174.129.0.0 - 174.129.255.255
var_dump(NETMatch(' 174.129.0.0 - 174.129.255.255 ', '174.129.1.31')); // True
var_dump(NETMatch(' 174.129.0.0/16 ', '174.139.1.31')); // False
var_dump(NETMatch(' 174.129.1.32 ', '174.129.1.31')); // False
?>

由于中國使用的大多數(shù)都是動態(tài) IP 地址,所以通過 IP 地址限制訪問具有一定的局限性,使用的時候需要謹慎,但是對于應急限制訪問來說,還是非常有用的。

php技術PHP 中檢查或過濾IP地址的實現(xiàn)代碼,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 东乌| 紫金县| 旬邑县| 突泉县| 虎林市| 无锡市| 泰来县| 磴口县| 涿鹿县| 中宁县| 西乌珠穆沁旗| 潼关县| 通州市| 静宁县| 怀化市| 屏东县| 张家港市| 旺苍县| 沾益县| 江门市| 洪雅县| 博湖县| 娱乐| 板桥市| 伊金霍洛旗| 德格县| 扎兰屯市| 天镇县| 安阳市| 丹阳市| 威远县| 芮城县| 高要市| 沛县| 新邵县| 中山市| 资源县| 石棉县| 仁化县| 梅州市| 江达县|