Durch Nutzung der MySQL-Funktionen INET_ATON()
und INET_NTOA()
Sie können eine eingehende IPv4-Adresse mit führenden Nullen zuverlässig in dieselbe Zeichenfolge ohne führende Nullen konvertieren. Umbrechen Sie INET_ATON()
mit INET_NTOA()
um die IP-Adresse zuerst in ihren ganzzahligen Wert und dann zurück in ein gepunktetes Viereck umzuwandeln.
IP mit führenden Nullen an verschiedenen Stellen:
mysql> SELECT INET_NTOA(INET_ATON('001.110.011.111'));
+-----------------------------------------+
| INET_NTOA(INET_ATON('001.110.011.111')) |
+-----------------------------------------+
| 1.110.11.111 |
+-----------------------------------------+
Und ohne führende Nullen zum Vergleich:
mysql> SELECT INET_NTOA(INET_ATON('1.110.11.111'));
+--------------------------------------+
| INET_NTOA(INET_ATON('1.110.11.111')) |
+--------------------------------------+
| 1.110.11.111 |
+--------------------------------------+
Hinweis: Dies gibt NULL
zurück wenn die eingegebene IP-Adresse keine gültige Adresse war. Es wird nicht die ursprüngliche Zeichenfolge zurückgeben oder führende Nullen von einer fehlerhaften IP-Adresse entfernen:
Fehlerhafte IP-Adresse mit führenden Nullen:
mysql> SELECT INET_NTOA(INET_ATON('888.777.123.123'));
+-----------------------------------------+
| INET_NTOA(INET_ATON('888.007.123.123')) |
+-----------------------------------------+
| NULL |
+-----------------------------------------+