SNMP::__construct

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

SNMP::__constructCreates SNMP instance representing session to remote SNMP agent

说明

public SNMP::__construct(
    int $version,
    string $hostname,
    string $community,
    int $timeout = -1,
    int $retries = -1
)

The function description goes here.

参数

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 for hostname it will be resolved by php-snmp library, not by Net-SNMP engine. Usage of IPv6 addresses when specifying FQDN may be forced by enclosing FQDN into square brackets. Here it is some examples:

IPv4 with default port127.0.0.1
IPv6 with default port::1 or [::1]
IPv4 with specific port127.0.0.1:1161
IPv6 with specific port[::1]:1161
FQDN with default porthost.domain
FQDN with specific porthost.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

The purpuse of community is SNMP version specific:

SNMP::VERSION_1SNMP community
SNMP::VERSION_2CSNMP community
SNMP::VERSION_3SNMPv3 securityName
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 sysLocation

<?php
$session
= new SNMP(SNMP::VERSION_1, "127.0.0.1", "public");
$sysdescr = $session->get("sysDescr.0");
echo
"$sysdescr\n";
?>

以上示例的输出类似于:

STRING: Test server

参见

add a note add a note

User Contributed Notes 1 note

up
0
GF
10 years ago
<?php
  $session
= new SNMP(SNMP::VERSION_1, "127.0.0.1", "public");
 
$sysdescr = $session->get("sysDescr.0");
  echo
"$sysdescr\n";
?>
doesn't work for me, use it instead :
<?php
  $version
= "3";   // snmp version "1", "2" or "2c", "3"
 
$host = "127.0.0.1";   // hostname or ip
 
$community = "public";   // snmp community

 
$session = new SNMP($version, $host, $community);
 
$sysdescr = $session->get("sysDescr.0");
  echo
"$sysdescr\n";
?>
I don't use the snmp version 2 that's why i have written 2 or 2c, I'm not sure so test it.
To Top