Аргерих Л. О языке РНР. Часть 3. Страница 72


} else {

$ipLong[$dotted] = Sret; $ipOotted[$ret] = Sdotted; " return $ret;

}

}

Этот метод выполняет обратную функцию в сравнении с ранее определен­ным методом dottedToIp(). Он преобразует 32-разрядный IP-адрес аргумента в формат с точками:

function ipToDotted($longIp)

{

if (!$longIp) {

log_err("Long IP address is required to get

dot formatted IP address"); return -1;

> elseif ($ret = $ipDotted[$longIp]) { return $ret;

} elseif ((Sret = long2ip($longlp)) == false) {

log_err("Dotted IP address could not be found for " . Slonglp); return -1;

} else {

$ipDotted[Slonglp] = $ret; $ipLong[$ret] = Slonglp; return $ret;

}

}

Следующий метод обнуляет массивы, в которых результаты за­

проса:

function resetCache()

{

ShostName = 0;

SdomainName = 0;

SipAddress = 0;

SmailXchanger = 0;

SservPort = 0;

SservName = 0; $ipDotted = 0; lipLong = 0;

>

Наконец, имеется вспомогательный метод для регистрации ошибок:

function log_err($msg) {

echo($msg . "<br>");

}

}

Сокеты

Сокеты предоставляют средства для программного доступа к уровням прото­колов. Однако не на всех платформах для доступа к уровню протоколов не­обходимы сокеты. В операционных системах, ведущих свое происхождение от System V, для доступа к уровням протоколов часто используется интер­фейс транспортного уровня - Transport Library Interface (TLI).

Сама по себе спецификация протокола не устанавливает, какой конкретный интерфейс должен применяться для доступа к уровням протокола. С течением времени самым распространенным для этого способом стал интерфейс соке- тов. При программировании на таких языках, как С и C++, используются различные реализации сокетов, специфические для операционной системы. Платформы Microsoft Windows предоставляют для этой цели WinSock API; другим примером служит API сокетов BSD, имеющийся на большинстве сис­тем UNIX, производных от BSD, и даже в некоторых системах System V. В Ja­va также имеется интерфейс сокетов для доступа к сети. Следуя этим приме­рам, РНР тоже реализует API сокетов для интерфейса с уровнями протоколов.

Понятие сокетов предполагает функции, позволяющие взаимодействовать с сетевыми соединениями способом, весьма похожим на программирование доступа к файлам, в частности следовать семантике «открыть-читать-пи­сать-закрыть». С помощью опций сокетов возможно осуществлять более сложное взаимодействие с уровнями протоколов (см. рис. 13.2).

Обычно написанные с применением библиотеки соке-




Если у вас пропали важные или не очень важные данные с любых носителей информации и вам крайне необходимо восстановление данных, добро пожаловать на наш сайт. Здесь вы найдете всю необходимую для себя информацию.