函式名稱:snmpget()
函式描述:snmpget()函式用於從指定的SNMP代理獲取指定的OID的值。
適用版本:PHP 4 >= 4.3.3, PHP 5, PHP 7
語法:string snmpget(string $hostname, string $community, string $object_id, int $timeout = 1000000, int $retries = 5)
引數:
- $hostname:要查詢的SNMP代理的主機名或IP地址。
- $community:SNMP代理的共同體字串,用於身份驗證。
- $object_id:要獲取的OID(物件識別符號)。
- $timeout(可選):超時時間,以微秒為單位,預設為1秒。
- $retries(可選):重試次數,預設為5次。
返回值:成功時返回獲取的值,失敗時返回FALSE。
示例:
- 獲取SNMP代理的系統描述:
$hostname = '192.168.0.1';
$community = 'public';
$object_id = 'sysDescr.0';
$value = snmpget($hostname, $community, $object_id);
echo "System Description: " . $value;
- 獲取SNMP代理的介面狀態:
$hostname = '192.168.0.1';
$community = 'public';
$object_id = 'ifOperStatus.1';
$value = snmpget($hostname, $community, $object_id);
if ($value === '1') {
echo "Interface is up";
} else {
echo "Interface is down";
}
注意事項:
- 在使用snmpget()函式之前,確保已安裝SNMP擴充套件並啟用了SNMP功能。
- 請根據實際情況替換$hostname和$community變數的值。
- OID的格式應為
. ,其中 是對應的物件識別符號, 是對應的索引(如果適用)。 - 請根據你的需求自定義超時時間和重試次數。