note 56413 added to function.ip2long
| From: | php-general at lists dot php dot net | Date: | Thu, 01 Sep 2005 19:47:51 +0000 |
| Subject: | note 56413 added to function.ip2long | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-94624@lists.php.net to get a copy of this message | ||
# m.ozarek
#
# Check if given mask is correct. You can check the short format mask
# like 8,16,24 or long format like 255.255.255.0
#
function isIpMask($mask){
$format = '';
if(preg_match("/[0-9].[0-9].[0-9].[0-9]/",$mask)){
$format = "long";
}else{
if($mask<=30){
$format = "short";
}else{
return false;
}
}
switch($format){
case long;
$mask = decbin(ip2long($mask));
break;
case short:
$tmp = $mask;
for($i=0; $i < $mask ;$i++){
$tmp.= 1;
}
for($j=0; $j < (32 - $mask);$j++){
$tmp.= 0;
}
$mask = $tmp;
break;
}
if(strlen($mask) <= 32){
for($i=0;$i<=32 ;$i++){
$bit = substr($mask,$i,1);
if(($bit - substr($mask,$i+1,1)) < 0){
return false;
}
}
}
return true;
}
# EXAMPLE
# isIpMask("255.255.255.0") -> return true
# isIpMask("24") -> return true
# isIpMask("5.5.5.5") -> return false
----
Manual Page -- http://www.php.net/manual/en/function.ip2long.php
Edit -- http://master.php.net/manage/user-notes.php?action=edit+56413
Delete: added to the manual -- http://master.php.net/manage/user-notes.php?action=delete+56413&report=yes&reason=added+to+the+manual
Delete: bad code -- http://master.php.net/manage/user-notes.php?action=delete+56413&report=yes&reason=bad+code
Delete: spam -- http://master.php.net/manage/user-notes.php?action=delete+56413&report=yes&reason=spam
Delete: useless -- http://master.php.net/manage/user-notes.php?action=delete+56413&report=yes&reason=useless
Delete: non-english -- http://master.php.net/manage/user-notes.php?action=delete+56413&report=yes&reason=non-english
Delete: other reasons -- http://master.php.net/manage/user-notes.php?action=delete+56413&report=yes
Reject -- http://master.php.net/manage/user-notes.php?action=reject+56413&report=yes
Search -- http://master.php.net/manage/user-notes.php