====== INET_ATON ====== 利用 MySQL 內建函式將 IP 轉換成 int,範圍是 0 ~ 4294967295。 建立 table CODE: [Copy to clipboard] CREATE TABLE `banned` ( `ip_start` int(10) NOT NULL default '0', `ip_end` int(10) NOT NULL default '0', ) TYPE=MyISAM COMMENT='禁止IP列表'; 禁用一段IP,如 192.168.1.1 ~ 192.168.255.255 INSERT INTO `banned` (`ip_start`, `ip_end`) VALUES (INET_ATON( '192.168.1.1' ),INET_ATON( '192.168.255.255' )); 查詢 IP 是否被禁用: $ip = '192.168.123.45'; $sql = "SELECT count(*) FROM `banned` WHERE ip_start >=INET_ATON('$ip') and ip_end <= INET_ATON('$ip') "; $result = mysql_query($sql); $banned = mysql_fetch_array($result); echo $banned[0] ? "禁止IP" : "通行IP" ;