[英]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.