Konvertiert eine gemäß IPv4-Protokoll angegebene IP-Adresse vom Punkt-Format in ein Long Integer

# ip2long

(PHP 4, PHP 5, PHP 7, PHP 8)

ip2long — Konvertiert eine gemäß IPv4-Protokoll angegebene IP-Adresse vom Punkt-Format in ein Long Integer

### Beschreibung

function ip2long(string `$ip`): int|false

Die Funktion ip2long() erzeugt aus einer im Punkt-Format angegebenen IPv4-Adresse ein Long Integer.

ip2long() funktioniert auch mit unvollständigen IP-Adressen. Lesen Sie » http://ps-2.kev009.com/wisclibrary/aix52/usr/share/man/info/en_US/a_doc_lib/libs/commtrf2/inet_addr.htm, um weitere Informationen zu erhalten.

### Parameter-Liste

`ip`

  Eine Adresse im Standardformat.

### Rückgabewerte

Gibt ein Long Integer zurück. Ist `ip` ungültig, wird `false` zurückgegeben.

### Beispiele

Beispiel #1 ip2long()-Beispiel:

`<?php
$ip = gethostbyname('www.example.com');
$out = "Die folgenden URLs entsprechen sich:<br />\n";
$out .= 'http://www.example.com/, http://' . $ip . '/, and http://' . sprintf("%u", ip2long($ip)) . "/<br />\n";
echo $out;
?>`

Beispiel #2 Eine IP-Adresse anzeigen

Das zweite Beispiel zeigt, wie eine konvertierte Adresse mittels printf() ausgegeben werden kann:

`<?php
$ip = gethostbyname('www.example.com');
$long = ip2long($ip);
if ($long == -1 || $long === FALSE) {
echo 'Ungültige IP, versuchen Sie es noch einmal';
} else {
echo $ip . "\n"; // 192.0.34.166
echo $long . "\n"; // 3221234342 (-1073732954 auf 32-bit Systemen aufgrund des Integer-Überlaufs)
printf("%u\n", ip2long($ip)); // 3221234342
}
?>`

### Anmerkungen

> Hinweis:

> Da der int-Typ von PHP vorzeichenbehaftet ist und viele IP-Adressen auf 32-bit Architekturen in einen negativen Integerwert aufgelöst werden, sollten Sie dort die Formatierungsangabe "%u" für sprintf() und printf() verwenden, um eine Stringdarstellung der vorzeichenlosen IP-Adresse zu erhalten.

> Hinweis:

> ip2long() gibt `-1` für die IP-Adresse `255.255.255.255` auf 32-Bit-Systemen zurück, da der Integer-Wert überläuft.

### Siehe auch

- long2ip() - Konvertiert eine Long-Integer-Adresse in einen String, der das (IPv4) Internet-Standard-Punktformat enthält ("Dotted-Format")
- sprintf() - Gibt einen formatierten String zurück

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open