(PHP 5 >= 5.4.0, PHP 7, PHP 8)
SNMP::__construct — 创建表示与远程 SNMP 代理的会话的 SNMP 实例
$version
,$hostname
,$community
,$timeout
= -1,$retries
= -1函数描述在这里。
version
SNMP 协议版本:SNMP::VERSION_1
, SNMP::VERSION_2C
, SNMP::VERSION_3
。
hostname
SNMP 代理。hostname
可以用可选的 SNMP 代理端口作为后缀,端口后缀用冒号分隔。IPv6 地址如果与端口一起使用,必须用方括号括起来。如果使用 FQDN 作为 hostname
,它将由 php-snmp 库解析,而不是由 Net-SNMP 引擎解析。在指定 FQDN 时,可以通过将 FQDN 括在方括号中来强制使用 IPv6 地址。以下是一些示例
IPv4 使用默认端口 | 127.0.0.1 |
IPv6 使用默认端口 | ::1 或 [::1] |
IPv4 使用特定端口 | 127.0.0.1:1161 |
IPv6 使用特定端口 | [::1]:1161 |
FQDN 使用默认端口 | host.domain |
FQDN 使用特定端口 | host.domain:1161 |
FQDN 使用默认端口,强制使用 IPv6 地址 | [host.domain] |
FQDN 使用特定端口,强制使用 IPv6 地址 | [host.domain]:1161 |
community
community
的用途与 SNMP 版本相关
SNMP::VERSION_1 | SNMP 社区 |
SNMP::VERSION_2C | SNMP 社区 |
SNMP::VERSION_3 | SNMPv3 securityName |
timeout
第一个超时之前的微秒数。
retries
超时情况下重试的次数。
SNMP::__construct() 当参数数量或类型错误,或指定的 SNMP 协议版本未知时,会抛出异常。
示例 #1 获取 sysLocation
<?php
$session = new SNMP(SNMP::VERSION_1, "127.0.0.1", "public");
$sysdescr = $session->get("sysDescr.0");
echo "$sysdescr\n";
?>
以上示例将输出类似以下内容
STRING: Test server