Справочник по PHP : Файлы и сети : Сетевые функции

Материал из Справочник Web-языков.

Перейти к: навигация, поиск
Главная  ::. PHP  ::. Файлы и сети  ::. Сетевые функции

Содержание

[править] ip2long

Производит конвертацию строки адреса IPv4 в число.

Синтаксис:

int ip2long(string ip_address);

Функция ip2long() возвращает четырех байтовое численное представление адреса IP v4 из строки (числа, разделенные точками, например: "127.0.0.1").

// получить IP адрес хоста
$ip=gethostbyname("www.php.net");
echo 
"Следующие URL эквивалентны:<br>";
echo 
"http://www.php.net/, http://".$ip.
     
"/, и http://".ip2long($ip)."/<br>";

[править] long2ip

Производит конвертацию числа в строку адреса IP v4.

Синтаксис:

string long2ip(int proper_address);

Функция long2ip() возвращает строковое представление IP-адреса (в формате: "aaa.bbb.ccc.ddd") из численного представления.

[править] gethostbyaddr

Возвращает имя хоста, который соответствует заданному IP-адресу.

Синтаксис:

string gethostbyaddr(string ip_address);

Функция gethostbyaddr() возвращает доменное имя хоста, заданного своим IP-адресом. В аргументе указывается адрес IP в строковом формате. В случае ошибки возвращает ip_address.

Надо отметить, что функция не гарантирует, что полученное имя на самом деле будет соответствовать действительности. Она лишь опрашивает хост по адресу ip_address и просит его сообщить свое имя. Владелец хоста, таким образом, может передавать все, что ему заблагорассудится.

echo gethostbyaddr("127.0.0.1");

[править] gethostbyname

Возвращает IP-адрес хоста.

Синтаксис:

string gethostbyname(string hostname);

Функция gethostbyname() получает в параметрах доменное имя хоста и возвращает его IP-адрес. Если адрес определить не удалось, функция возвращает hostname.

[править] gethostbynamel

Возвращает список IP-адресов хоста.

Синтаксис:

array gethostbynamel(string hostname);

Одному доменному имени может соответствовать сразу несколько IP-адресов, и в случае сильной загруженности серверов DNS-сервер сам выбирает, по какому IP-адресу перенаправить запрос. Он выбирает тот адрес, который использовался наиболее редко.

Функция gethostbynamel() возвращает не один, а все IP-адреса хоста с именем hostname.

Стоит заметить, что в Интернете существует множество виртуальных хостов, которые имеют различные доменные имена, но один и тот же IP-адресс. Таким образом, если следующая последовательность команд для существующего хоста с IP-адресом ip всегда печатает этот же адрес:

$host gethostbyaddr($ip);
echo 
gethostbyname($host);

то аналогичная последовательность для домена с DNS-именем $host, наоборот, может напечатать не то же имя, а другое:

$ip gethostbyname($host);
echo 
gethostbyaddr($ip);

[править] getprotobyname

Производит определение номера порта, используемого протоколом.

Синтаксис:

int getprotobyname(string name);

[править] getprotobynumber

Производит определение протокола порта.

Синтаксис:

string getprotobynumber(int number);

[править] getservbyname

Производит определение протокола интернет-службы.

Синтаксис:

int getservbyname(string service, string protocol);

Эта функция возвращает номер порта, который использует служба service.

В аргументе protocol указывается тип протокола - TCP или UDP.

echo getservbyname("HTTP", "TCP"); // может вывести 80

[править] getservbyport

Производит определение интернет-службы, которая использует заданный порт.

Синтаксис:

string getservbyport(int port, string protocol);

Здесь в аргументе protocol нужно указать тип протокола - TCP либо UDP.

echo getservbyport(21"TCP"); // выведет: ftp
echo getservbyport(23"TCP"); // выведет: telnet

[править] checkdnsrr

Производит проверку записи DNS.

Синтаксис:

int checkdnsrr(string host [, string type]);

Эта функция отправляет запрос DNS-серверу для поиска записей, которые имеются для хоста host. Если были найдены записи типа type, то функция возвращает true. В противном случае и при ошибке - false.

Аргумент typeможет принимать значения:

  • A
  • MX (по умолчанию)
  • NS
  • SOA
  • PTR
  • CNAME
  • ANY

Аргумент host может указываться строкой в формате IP с разделением точками, либо быть именем хоста.

[править] getmxrr

Производит получение MX записи для интернет-хоста.

Синтаксис:

int getmxrr(string hostname, array mxhosts [, array weight]);

Функция getmxrr() инициирует поиск в базе данных DNS записи MX (почтовый сервер домена) для хоста hostname.

Если запись найдена, возвращает true, если нет - то false.

Список записей MX заносится в массив mxhosts. Если указан массив weight, он заполняется дополнительной информацией о записях.

Личные инструменты
1.5411760807