PHPTS:一键免费搭建 Nginx + PHP + MySQL 运行环境

SNMP::get

(PHP 5 >= 5.4.0, PHP 7)

SNMP::getFetch an SNMP object

说明

public SNMP::get ( mixed $object_id [, bool $preserve_keys = FALSE ] ) : mixed

Fetch an SNMP object specified in object_id using GET query.

参数

If object_id is a string, then SNMP::get() will return SNMP object as string. If object_id is a array, all requested SNMP objects will be returned as associative array of the SNMP object ids and their values.

object_id

The SNMP object (OID) or objects

preserve_keys

When object_id is a array and preserve_keys set to TRUE keys in results will be taken exactly as in object_id, otherwise SNMP::oid_output_format property is used to determinate the form of keys.

返回值

Returns SNMP objects requested as string or array depending on object_id 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
)

参见