31        if (strpos($cidr, 
'/') === 
false) {
 
   35        list ($net, 
$mask) = explode(
'/', $cidr);
 
   40        if (strstr($ip, 
':') || strstr($net, 
':')) {
 
   44            $ip_pack = @inet_pton($ip);
 
   45            $net_pack = @inet_pton($net);
 
   47            if ($ip_pack === 
false || $net_pack === 
false) {
 
   52            $ip_ip = str_split(bin2hex($ip_pack), 8);
 
   53            foreach ($ip_ip as &$value) {
 
   54                $value = hexdec($value);
 
   57            $ip_net = str_split(bin2hex($net_pack), 8);
 
   58            foreach ($ip_net as &$value) {
 
   59                $value = hexdec($value);
 
   62            $ip_ip[0] = ip2long($ip);
 
   63            $ip_net[0] = ip2long($net);
 
   66        for (
$i = 0; 
$mask > 0 && 
$i < 
sizeof($ip_ip); 
$i++) {
 
   70                $iteration_mask = 
$mask;
 
   74            $ip_mask = ~((1 << (32 - $iteration_mask)) - 1);
 
   76            $ip_net_mask = $ip_net[
$i] & $ip_mask;
 
   77            $ip_ip_mask = $ip_ip[
$i] & $ip_mask;
 
   79            if ($ip_ip_mask != $ip_net_mask) {
 
An exception for terminatinating execution or to throw for unit testing.
static ipCIDRcheck($cidr, $ip=null)
Check whether an IP address is part of a CIDR.
if((!isset($_SERVER['DOCUMENT_ROOT'])) OR(empty($_SERVER['DOCUMENT_ROOT']))) $_SERVER['DOCUMENT_ROOT']