If the function doesn't exist:
<?
if (!function_exists("long2ip")) {
function long2ip($long) {
// Valid range: 0.0.0.0 -> 255.255.255.255
if ($long < 0 || $long > 4294967295) return false;
$ip = "";
for ($i=3;$i>=0;$i--) {
$ip .= (int)($long / pow(256,$i));
$long -= (int)($long / pow(256,$i))*pow(256,$i);
if ($i>0) $ip .= ".";
}
return $ip;
}
}
?>long2ip
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
long2ip
Референца за `function.long2ip.php` со подобрена типографија и навигација.
long2ip
(PHP 4, PHP 5, PHP 7, PHP 8)
long2ip — Конвертира долг цел број адреса во стринг во (IPv4) стандарден интернет формат со точки
= NULL
Функцијата long2ip() генерира интернет адреса во формат со точки (т.е.: ааа.ббб.ццц.ддд) од претставата на долг цел број.
Параметри
ip-
Правилна претстава на адресата во долг цел број.
Вратени вредности
Враќа интернет IP адреса како string.
Дневник на промени
| Верзија | = NULL |
|---|---|
| 8.4.0 | Тип на враќање променет од string|false to string. |
| 7.1.0 |
Типот на параметарот на ip е променето од string to int.
|
Белешки
Забелешка:
На 32-битни архитектури, префрлањето на цел број претстави на IP адреси од string to int нема да даде точни резултати за броеви кои надминуваат
PHP_INT_MAX.
Види Исто така
- ip2long() - Конвертира стринг што содржи (IPv4) интернет протокол адреса со точки во долг цел број
Белешки од корисници 2 забелешки
For a 32bit safe long2ip, which can accept string or signed integer input, try:
function safelong2ip($long) {
$binStr = sprintf("%032s", decbin((float)$long));
if (strlen($binStr) != 32) {
throw new Exception("Invalid IPv4 subnet!");
}
$ipArr = [];
for ($i = 0; $i < 4; ++$i) {
$ipArr[] = bindec(substr($binStr, $i*8, 8));
}
return implode('.', $ipArr);
}