(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.
objectId
The 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)不拋出任何異常。如果要在某些庫出錯(cuò)時(shí)拋出 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 )