SNMP::get

(PHP 5 >= 5.4.0, PHP 7, PHP 8)

SNMP::getFetch an SNMP object

说明

public SNMP::get ( array|string $objectId , bool $preserveKeys = false ) : array|bool

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.

错误/异常

本方法默认不抛出任何异常。如果要在某些库出错时抛出 SNMPException 异常,用户需要将 SNMP 类参数 exceptions_enabled 设定为相应的值。更多细节见 SNMP::$exceptions_enabled 的解释

范例

Example #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
)

Example #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
)

参见

User Contributed Notes

There are no user contributed notes for this page.