Ved at bruge MySQL-funktionerne INET_ATON()
og INET_NTOA()
du kan pålideligt konvertere en indgående IPv4-adresse, som har indledende nuller, til den samme streng uden indledende nuller. Ombryd INET_ATON()
med INET_NTOA()
for at konvertere IP-adressen først til dens heltalværdi og derefter tilbage til en prikket quad.
IP med indledende nuller forskellige steder:
mysql> SELECT INET_NTOA(INET_ATON('001.110.011.111'));
+-----------------------------------------+
| INET_NTOA(INET_ATON('001.110.011.111')) |
+-----------------------------------------+
| 1.110.11.111 |
+-----------------------------------------+
Og uden indledende nuller til sammenligning:
mysql> SELECT INET_NTOA(INET_ATON('1.110.11.111'));
+--------------------------------------+
| INET_NTOA(INET_ATON('1.110.11.111')) |
+--------------------------------------+
| 1.110.11.111 |
+--------------------------------------+
Bemærk: Dette vil returnere NULL
hvis den indtastede IP-adresse ikke var en gyldig adresse. Den returnerer ikke den originale streng eller strimler foranstillede nuller fra en forkert IP-adresse:
Defekt IP-adresse med indledende nuller:
mysql> SELECT INET_NTOA(INET_ATON('888.777.123.123'));
+-----------------------------------------+
| INET_NTOA(INET_ATON('888.007.123.123')) |
+-----------------------------------------+
| NULL |
+-----------------------------------------+