getservbyname
با getservbyname() می توانی «شماره پورت سرویس» را بگیری. «سرویس (Service)» مثل http است. «پروتکل (Protocol)» مثل tcp یا udp است. مثل پیدا کردن شماره کلاس از روی نام درس است.
تعریف و کاربرد «شماره پورت سرویس»
این تابع شماره پورت را از نام سرویس و نام پروتکل برمی گرداند. اگر پیدا نشود، مقدار FALSE می دهد.
نحو (Syntax)
getservbyname(service, protocol)
مثال سریع؛ http روی tcp
<?php
$portnum = getservbyname("http", "tcp");
echo $portnum;
?>
گام های عملی
- نام سرویس را مشخص کن؛ مثل "http".
- نام پروتکل را تعیین کن؛ مثلاً "tcp".
- تابع را صدا بزن و خروجی بگیر.
- اگر FALSE بود، نام ها را بررسی کن.
پارامترها و خروجی
- service: نام سرویس اینترنت؛ مانند "http".
- protocol: نام پروتکل؛ مانند "tcp" یا "udp".
- خروجی: شماره پورت یا مقدار FALSE.
نکته: برای http روی tcp معمولاً پورت 80 برگردانده می شود.
هشدار: حروف کوچک/بزرگ مهم نیست؛ اما نام اشتباه نتیجه را FALSE می کند.
مطالب مرتبط
اگر شماره داری و دنبال نام پروتکل هستی، getprotobynumber را ببین. برای گرفتن شماره پروتکل از نام، getprotobyname مفید است. همچنین برای گرفتن IP از نام میزبان، gethostbyname را بررسی کن.
جمع بندی سریع
- نام سرویس و پروتکل را بده.
- شماره پورت را بگیر.
- http + tcp معمولاً 80 است.
- نام های اشتباه، خروجی FALSE می دهند.