(PHP 5 >= 5.4.0, PHP 7, PHP 8)
SNMP::get — Fetch an SNMP object
Fetch an SNMP object specified in
objectId using GET query.
If objectId is a string, then SNMP::get()
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.
objectIdThe SNMP object (OID) or objects
preserveKeys
When objectId is a array and
preserveKeys set to true keys in results
will be taken exactly as in objectId,
otherwise SNMP::oid_output_format property is used to determinate
the form of keys.
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");
$sysdescr = $session->get("sysDescr.0");
echo "$sysdescr\n";
$sysdescr = $session->get(array("sysDescr.0"));
print_r($sysdescr);
?>以上示例的输出类似于:
STRING: Test server
Array
(
[SNMPv2-MIB::sysDescr.0] => STRING: Test server
)
示例 #2 Multiple SNMP objects
$session = new SNMP(SNMP::VERSION_1, "127.0.0.1", "public");
$results = $session->get(array("sysDescr.0", "sysName.0"));
print_r($results);
$session->close();以上示例的输出类似于:
Array
(
[SNMPv2-MIB::sysDescr.0] => STRING: Test server
[SNMPv2-MIB::sysName.0] => STRING: myhost.nodomain
)