(PHP 5 >= 5.4.0, PHP 7, PHP 8)
SNMP::getnext — 擷取指定物件 ID 之後的 SNMP 物件
如果 objectId 是一個字串,那麼 SNMP::getnext() 將會以字串形式返回 SNMP 物件。如果 objectId 是一個陣列,所有請求的 SNMP 物件將會以 SNMP 物件 ID 及其值的關聯陣列形式返回。
objectIdSNMP 物件 (OID) 或多個物件
根據 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");
$nsysdescr = $session->getnext("sysDescr.0");
echo "$nsysdescr\n";
$nsysdescr = $session->getnext(array("sysDescr.0"));
print_r($nsysdescr);
?>以上範例的輸出結果類似於
OID: NET-SNMP-MIB::netSnmpAgentOIDs.8
Array
(
[SNMPv2-MIB::sysObjectID.0] => OID: NET-SNMP-MIB::netSnmpAgentOIDs.8
)
範例 #2 多個 SNMP 物件
<?php
$session = new SNMP(SNMP::VERSION_1, "127.0.0.1", "public");
$results = $session->getnext(array("sysDescr.0", "sysName.0"));
print_r($results);
$session->close();
?>以上範例的輸出結果類似於
Array
(
[SNMPv2-MIB::sysObjectID.0] => OID: NET-SNMP-MIB::netSnmpAgentOIDs.8
[SNMPv2-MIB::sysLocation.0] => STRING: Nowhere
)