SNMP::__construct
(PHP 5 >= 5.4.0, PHP 7, PHP 8)
SNMP::__construct — Creates SNMP instance representing session to remote SNMP agent
说明
int
$version
,string
$hostname
,string
$community
,int
$timeout
= -1,int
$retries
= -1)
Creates SNMP instance representing session to remote SNMP agent.
参数
version
-
SNMP protocol version:
SNMP::VERSION_1
,SNMP::VERSION_2C
,SNMP::VERSION_3
. hostname
-
The SNMP agent.
hostname
may be suffixed with optional SNMP agent port after colon. IPv6 addresses must be enclosed in square brackets if used with port. If FQDN is used forhostname
it will be resolved by PHP SNMP extension, not by Net-SNMP engine. Usage of IPv6 addresses when specifying FQDN may be forced by enclosing FQDN into square brackets. Here are some examples:IPv4 with default port 127.0.0.1 IPv6 with default port ::1 or [::1] IPv4 with specific port 127.0.0.1:1161 IPv6 with specific port [::1]:1161 FQDN with default port host.domain FQDN with specific port host.domain:1161 FQDN with default port, force usage of IPv6 address [host.domain] FQDN with specific port, force usage of IPv6 address [host.domain]:1161 community
-
Specifies the security level for given
version
. The purpose ofcommunity
access string is SNMP version specific:
SNMPv3 requires to configure security-related session parameters with the SNMP::setSecurity() method.SNMP::VERSION_1
public
for read-only permission orprivate
for read-writeSNMP::VERSION_2C
public
for read-only permission orprivate
for read-writeSNMP::VERSION_3
SNMPv3 security name, may be one of: noAuthNoPriv
,authNoPriv
(an auth passphrase and auth protocol are required), orauthPriv
(both an auth passphrase and a protocol, as well as a privacy passphrase and protocol are required) timeout
-
The number of microseconds until the first timeout.
retries
-
The number of retries in case timeout occurs.
错误/异常
SNMP::__construct() throws an exception when parameters count or types are wrong or unknown SNMP protocol version specified.
示例
示例 #1 Fetching the physical location of the host
<?php
$session = new SNMP(SNMP::VERSION_1, "127.0.0.1", "public");
$sysdescr = $session->get("sysDescr.0");
echo "$sysdescr\n";
?>
以上示例的输出类似于:
STRING: Test server
参见
- SNMP::close() - Close SNMP session