簡體   English   中英

Php IP范圍if語句

[英]Php IP range if statement

我想檢查php是否IP地址出現在指定范圍內,如果它確實顯示webform,如果不是false,則不執行任何操作。

這是我在想的例子:

<?php 
function in_ip_range($ip_one, $ip_two=false){ 
    if($ip_two===false){ 
        if($ip_one==$_SERVER['REMOTE_ADDR']){ 
            $ip=true; 
        }else{ 
            $ip=false; 
        } 
    }else{ 
        if(ip2long($ip_one)<=ip2long($_SERVER['REMOTE_ADDR']) && ip2long($ip_two)>=ip2long($_SERVER['REMOTE_ADDR'])){ 
            $ip=true; 
        }else{ 
            $ip=false; 
        } 
    } 
    return $ip; 
} 
//usage 
echo in_ip_range('192.168.0.0','192.168.1.254'); 
?>

謝謝

$ip = $_SERVER['REMOTE_ADDR'];
if(preg_match("/192\.168\.[0|1]\.\d+/", $ip)){
     echo "form";
}else{
     echo "no form";
}

我現在看到你不想允許...... 255? 正確?
在這種情況下,你需要這個正則表達式:
"/192\\.168\\.[0|1]\\.([0|1][0-9][0-9]|[2][0-4][0-9]|25[0-4])/"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM