![]() |
Php, сравнение Ip (вопрос)
Здраствуйте...
Подскажите пожалуйста как можно проверить принадлежит ли ip адрес заданному диапазону? PHP код:
сорри за глупые вопросы, умные пока придумать не могу... :confused: |
PHP код:
|
пусть $d1 и $d2 - диапазоны в виде "x.x.x.x" (например 1.2.3.4 - 1.2.3.100)
переводи их в числа (4-байтные как бы) чтобы небыло никаких точек. просто числа. далее переводи в такое же число заданый адрес, и если конец_диапазона >= заданый_адрес >= начало_диапазона то yes, иначе нет. UPD поскольку коллега Green_Bear успел написать ответ быстрее меня, читай его код (правда я неуверен что он правильный) |
надо было уточнить как задан диапазон
уточняй сразу что нужно и пиши пример так: PHP код:
|
кез, а чо там не правильного? поставить * за место цифры =)) например 127.0.*.*
и все =\ правда я не учел, что твое... например 127.0.0.1 - 127.0.0.15 =\ но это уже надо более точно узнать у автора топика, что ему конкретно надо. |
PHP код:
|
2GreenBear твой код неправильный. сравнивать символы на равенство?)
2TaNkist это вообще что? 2BlackLogic а это что? -- вообще советую перечитывать свои сообщения перед постом. ЗЫ сегодня победил кез. |
покажи правильное.
|
тк в пхп тип Integer по-умолчанию знаковый и ip2long может вернуть отрицательное значение, то делаем так:
Цитата:
|
ну у каждой задачи есть множесвто решений. так что если ты делаешь по другому, то не значит что у других не правильно :)
другое дело, что я вопрос не правильно понял =). .. как уже написал выше. |
| Время: 01:17 |