(PHP 5 >= 5.4.0, PHP 7, PHP 8)
SNMP::getnext — Получить объект SNMP, который следует за данным идентификатором объекта
Получите объект SNMP, следующий за указанным objectId
.
Если objectId
является строкой, тогда SNMP::getnext()
вернёт объект SNMP в виде строки. Если
objectId
является массивом, все запрошенные объекты SNMP
будут возвращены как ассоциативный массив идентификаторов объектов SNMP и их
значений.
objectId
Объект SNMP (OID) или объекты
Возвращает запрошенные объекты SNMP в виде строки или массива
в зависимости от типа objectId
или false
в случае возникновения ошибки.
Этот метод по умолчанию не генерирует исключения.
Чтобы включить генерацию исключения SNMPException при возникновении
некоторых ошибок данной библиотеки, необходимо установить параметр
exceptions_enabled
класса SNMP в
соответствующее значение. Подробнее смотрите в
объяснении параметра SNMP::$exceptions_enabled
.
Пример #1 Одиночный объект SNMP
Одиночный объект SNMP может быть запрошен двумя способами: как строковое возвращаемое строковое значение или как одноэлементный массив с ассоциативным массивом в качестве вывода.
<?php
$session = new SNMP(SNMP::VERSION_1, "127.0.0.1", "public");
$nsysdescr = $session->getnext("sysDescr.0");
echo "$nsysdescr\n";
$nsysdescr = $session->getnext(array("sysDescr.0"));
print_r($nsysdescr);
?>
Вывод приведённого примера будет похож на:
OID: NET-SNMP-MIB::netSnmpAgentOIDs.8 Array ( [SNMPv2-MIB::sysObjectID.0] => OID: NET-SNMP-MIB::netSnmpAgentOIDs.8 )
Пример #2 Множественные объекты SNMP
<?php
$session = new SNMP(SNMP::VERSION_1, "127.0.0.1", "public");
$results = $session->getnext(array("sysDescr.0", "sysName.0"));
print_r($results);
$session->close();
?>
Вывод приведённого примера будет похож на:
Array ( [SNMPv2-MIB::sysObjectID.0] => OID: NET-SNMP-MIB::netSnmpAgentOIDs.8 [SNMPv2-MIB::sysLocation.0] => STRING: Nowhere )