Перейти к содержимому

Функция PHP gethostbyaddr(): всё, что нужно знать

Как разработчик на PHP, вы можете столкнуться с необходимостью получить имя хоста для заданного IP-адреса. Для этой цели отлично подходит функция gethostbyaddr(). В этой статье мы подробно рассмотрим её использование.

Что такое функция gethostbyaddr()?

Функция gethostbyaddr() — это встроенная функция PHP, которая выполняет обратный DNS-запрос для получения имени хоста по заданному IP-адресу. Она использует системный DNS-резолвер и поддерживает только IPv4-адреса. В случае ошибки она возвращает исходную строку IP-адреса, а не false.

Как использовать функцию gethostbyaddr()

Использовать функцию gethostbyaddr() довольно просто. Ниже приведён её синтаксис:

PHP-синтаксис функции gethostbyaddr()

php
gethostbyaddr($ip_address);

Функция принимает один параметр:

  • `$ip_address`: IPv4-адрес, для которого нужно получить имя хоста.

Ниже приведён пример использования функции gethostbyaddr() для получения имени хоста по IP-адресу:

Как использовать функцию gethostbyaddr()?

php
<?php

$ip_address = "192.0.2.1";
$host_name = gethostbyaddr($ip_address);
if ($host_name === $ip_address) {
    echo "Could not resolve host name for $ip_address";
} else {
    echo "The host name for IP address $ip_address is $host_name";
}
?>

В этом примере мы получаем имя хоста для IP-адреса 192.0.2.1. Функция выполняет обратный DNS-запрос и возвращает соответствующее имя хоста. Если запрос не удаётся, функция возвращает исходную строку IP-адреса, что мы проверяем в условии if.

Заключение

Функция gethostbyaddr() — полезный инструмент для получения имени хоста по заданному IPv4-адресу. Понимая её синтаксис, поведение при возврате значений и особенности использования, вы сможете легко интегрировать её в свои PHP-приложения. Надеемся, эта статья помогла вам лучше разобраться в работе функции gethostbyaddr() в PHP.

Практика

Что делает функция gethostbyaddr() в PHP?

Считаете ли это полезным?

Предпросмотр dual-run — сравните с маршрутами Symfony на продакшене.