пусть имеется диаппазон, допустим, Мегафона 83.149.0.0-83.149.7.255
<?php
/**
* Определение принадлежности ip к диаппазону
*/
//пусть имеется диаппазон, допустим, Мегафона 83.149.0.0-83.149.7.255
//вспомогательная функция
function ext_ip2long($ip)
{
return sprintf("%u",ip2long($ip));
}
//приведенный ip клиента
$ip=ext_ip2long($_SERVER['REMOTE_ADDR']);
//принадлежность
if (ext_ip2long('83.149.0.0')<=$ip && $ip<=ext_ip2long('83.149.7.255'))
{
echo 'ip клиента принадлежит диаппазону';
}
else
{
echo 'ip клиента не принадлежит диаппазону';
}
/*
Почему же я стал городить доп-функцию, а не воспользовался
очевидным вариантом ip2long($ip) ?
Ответ в особенностях 32-битных систем:
echo ip2long('130.244.0.0') выдаст в 32 битной системе -2097938432
*/
?>