|
Иногда полезная информация попадается на глаза тогда, когда необходимость в ней уже или еще отсутствует. Например, я только что нашел на сайте MyMans.org описание функций, с помощью которых в базе MySQL можно удобно хранить IP адреса, используя поле типа INT. Абсолютно правильная, кстати, идея — это гораздо эффективнее с точки зрения системных ресурсов, чем отводить текстовое поле (встречавшееся решение).
Пример кода:
SELECT INET_ATON('127.0.0.1'), INET_ATON('127.1');
-- 2130706433, 2130706433
SELECT INET_NTOA(3520061480);
-- '209.207.224.40'
SELECT * FROM Sessions WHERE ip_address
BETWEEN INET_ATON('192.168.0.1') AND INET_ATON('192.168.0.255');
От себя могу добавить, что эти функции появились начиная с версии 3.23.15, поэтому их использование никак не ухудшит переносимость скриптов.
Кстати, очень рекомендую MyMans всем, кто его еще не видел. Весьма полезный коллективный блог по вебдеву.
|