有些场景需要存ip地址的时候,为了性能的提升可能考虑到要将ip地址转换成的int类型存到数据库中。
优点:不仅在空间上有了节省,也提升了查询的性能。
缺点:阅读比较困难需要转换之后阅读。
下面就来看下PHP 和MySQL中ip如何和int互相转换:
PHP
- $ip = '192.168.142.43';
-
- $long = ip2long($ip);//ip 转 int 3232271915
-
- echo $long."<br>";
-
- echo long2ip($long);//int 转 ip 192.168.142.43
MySQL
- select INET_ATON('192.168.142.43');//3232271915
- select INET_NTOA(3232271915);//192.168.142.43
通过结果可以看到PHP和Mysql的转换结果相同,所以可以放心的将ip转换成int类型了。