note 56413 added to function.ip2long

From: 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

« previous php.notes (#94624) next »