Функции Язык программирования PHP

snmpwalkoid

(PHP 3>= 3.0.8, PHP 4)

snmpwalkoid - запрашивает дерево информации о сетевом объекте.

Описание

array snmpwalkoid (string hostname, string community, string object_id [, int timeout [, int retries]])

Возвращает ассоциативный массив с object id'ами и их соответствующими значениями, начиная с object_id как root, FALSE при ошибке.

snmpwalkoid() используется для чтения всех object id'ов и их соответствующих значений из SNMP-агента hostname. Community специфицирует read community этого агента. NULL object_id считается root дерева SNMP-объектов, и все объекты ниже этого дерева возвращаются как массив. Если object_id специфицирован, возвращаются все SNMP-объекты, ниже этого object_id.

Существование snmpwalkoid() и snmpwalk() имеет исторические корни. Обе функции предоставлены для обеспечения обратной совместимости.
$a = snmpwalkoid("127.0.0.1", "public", "");

Этот вызов функции возвратит все SNMP-объекты из SNMP-агента, запущенного на localhost. Можно пройти по значениям с помощью цикла:
for (reset($a); $i = key($a); next($a)) { echo "$i: $a[$i]<br>\n"; 
}


Назад Оглавление Вперёд
snmpwalk Вверх Функции сокетов

Утверждения/Assertions

Утверждение это проверка символов, идущих следом или предшествующих текущей точке совпадения, не используя реально никаких символов. Простые утверждения, кодированные как \b, \B, \A, \Z, \z, ^ и $, были рассмотрены ранее. Более сложные утверждения кодированы как субпатэрны.
Есть утверждения двух видов: те, которые смотрят вперёд/ahead от текущей позиции, в строке-субъекте, и те, которые смотрят назад/behind.

Субпатэрн утверждения совпадает обычным образом, за исключением того, что он не вызывает изменения текущей позиции совпадения. Утверждения вперёд начинаются с (?= для положительного утверждения и с (?! - для отрицательного утверждения. Например,

\w+(?=;)

совпадает со словом с последующей точкой с запятой, но не включает точку с запятой в совпадение, и

foo(?!bar)

совпадает с любым появлением "foo", после которого не идёт "bar". Обратите внимание, что похожий патэрн

(?!foo)bar

не найдёт никаких вхождений "bar", перед которыми идёт что-нибудь, кроме "foo"; он найдёт, тем не менее, любое вхождение "bar", поскольку утверждение (?!foo) всегда TRUE, если следующие три символа это "bar". Утверждение назад необходимо для получения этого эффекта.