SNMP::get

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

SNMP::get获取 SNMP 对象

描述

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

使用 GET 查询获取在 objectId 中指定的 SNMP 对象。

参数

如果 objectId 是一个字符串,那么 SNMP::get() 将返回 SNMP 对象作为字符串。如果 objectId 是一个数组,则所有请求的 SNMP 对象将作为 SNMP 对象 ID 及其值的关联数组返回。

objectId

The SNMP object (OID) or objects

preserveKeys

objectId 是一个数组并且 preserveKeys 设置为 true 时,结果中的键将与 objectId 中的键完全相同,否则将使用 SNMP::oid_output_format 属性来确定键的格式。

返回值

根据 objectId 类型返回请求的 SNMP 对象(字符串或数组),或者在错误时返回 false

错误/异常

此方法默认不抛出任何异常。若要在库发生某些错误时抛出 SNMPException 异常,应将 SNMP 类参数 exceptions_enabled 设置为相应的值。有关更多详细信息,请参阅 SNMP::$exceptions_enabled 解释

示例

示例 #1 单个 SNMP 对象

可以使用两种方式请求单个 SNMP 对象:作为字符串,返回字符串值,或者作为具有关联数组作为输出的单个元素数组。

<?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 多个 SNMP 对象

$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
)

参见

添加注释

用户贡献的注释

此页面没有用户贡献的注释。
To Top