Программирование > Теория, алгоритмы и стандарты
перевод ip адреса в целое число(int).
ThE0ReTiC:
Yukko
1. Перестаем заниматься идиотизмом и пользуемся [p]ip2long[/p] [p]long2ip[/p]
2. Вопрос был задан безотносительно языка реализации.
по поводу статьи - функции не глючат:
long (а речь идет именно о нем ибо перевод не подрузамевает использование беззнакового типа) = QWORD [-2147483648, 2147483647] = 4 байта
что как раз составляет весь возможный диапазон IP адресов.
3. Оптимальный вариант - использовать функции и/или типы СУБД для хранения, если проект подразумевает что СУБД используется. Вот с этим согласен.
commander:
ThE0ReTiC
--- Цитировать ---использовать функции и/или типы СУБД для хранения
--- Конец цитаты ---
функции согласен... а на счет встроенных типов... скажу следующее...
на примере PostgreSQL бд объемом (60 Mb) скорость выборки что по полю с типом (int8), что по полю со встроенным типом данных (cidr) одинакова.
Но кол-во занимаемого места:
int8 - 8 bytes
cidr - 12 or 24 bytes
зачем платить больше? :)
единственный минус в том, что в PostgreSQL нет встроенной функции перевода ip в int, но это решаеться путём написания своей функции на С ... благо постгрес это поддерживает...
Навигация
Перейти к полной версии