(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.
本方法默認(rèn)不拋出任何異常。如果要在某些庫出錯時拋出 SNMPException
異常,用戶需要將 SNMP 類參數(shù) exceptions_enabled
設(shè)定為相應(yīng)的值。更多細(xì)節(jié)見
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
)