PHP - Manual: SNMP::getnext
2024-11-14
(PHP 5 >= 5.4.0, PHP 7, PHP 8)
SNMP::getnext — Fetch an SNMP object which follows the given object id
Fetch an SNMP object that follows specified objectId
.
If objectId
is a string, then SNMP::getnext()
will return SNMP object as string. If
objectId
is a array, all requested SNMP
objects will be returned as associative array of the SNMP object ids and their
values.
objectId
The SNMP object (OID) or objects
Returns SNMP objects requested as string or array
depending on objectId
type or false
on error.
本方法默认不抛出任何异常。如果要在某些库出错时抛出 SNMPException
异常,用户需要将 SNMP 类参数 exceptions_enabled
设定为相应的值。更多细节见
SNMP::$exceptions_enabled
的解释。
示例 #1 Single SNMP object
Single SNMP object may be requested in two ways: as string resulting string return value or as single-element array with associative array as output.
<?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 Miltiple SNMP objects
<?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 )