ip2long
تابع ip2long() آدرس IPv4 را عدد طولانی می کند. «عدد طولانی (Long Integer)» یعنی یک عدد خیلی بزرگ. این کار برای ذخیره و مقایسه سریع مفید است؛ مثل کارت دانش آموزی که شماره اش بررسی را ساده می کند.
تعریف و کاربرد
طبق منبع، ip2long() یک آدرس IPv4 استاندارد را به یک عدد طولانی تبدیل می کند. در خطا، مقدار FALSE برمی گرداند.
سینتکس
ip2long(address) یک رشته آدرس IPv4 می گیرد و عدد برمی گرداند.
مثال عملی: تبدیل دامنه به عدد
در این نمونه، IP دامنه گرفته می شود و سپس با ip2long() به عدد تبدیل می شود. برای نمایش درست، از sprintf("%u") استفاده شده است.
<?php
$ip = gethostbyname("www.w3schools.com");
$out = "The following URLs are equivalent:<br>";
$out .= "https://www.w3schools.com/, https://" . $ip . "/, and https://" . sprintf("%u", ip2long($ip)) . "/";
echo $out;
?>
گام های سریع اجرا
- یک آدرس IPv4 معتبر آماده کن.
ip2long(address)را صدا بزن.- اگر نتیجه
FALSEبود، ورودی را بررسی کن. - برای معکوس، از long2ip استفاده کن.
نکات و هشدارها
نکته: این تابع فقط با IPv4 کار می کند؛ برای فرمت باینری از inet_pton استفاده کن.
هشدار: در صورت ورودی نامعتبر، مقدار FALSE برمی گردد؛ قبل از استفاده بررسی کن.
جمع بندی سریع
- ip2long آدرس را عدد می کند.
- فقط IPv4 را پشتیبانی می کند.
- خطا یعنی مقدار FALSE.
- معکوس با long2ip انجام می شود.
- تبدیل IP به عدد برای ذخیره سریع مفید است.