# SNMP::__construct

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

SNMP::__construct — Creates SNMP instance representing session to remote SNMP agent

### Descripción

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

The function description goes here.

### Parámetros

`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 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`

  The purpuse of `community` is SNMP version specific:

  SNMP::VERSION_1 | SNMP community
  SNMP::VERSION_2C | SNMP community
  SNMP::VERSION_3 | SNMPv3 securityName

`timeout`

  The number of microseconds until the first timeout.

`retries`

  The number of retries in case timeout occurs.

### Errores/Excepciones

SNMP::__construct() throws an exception when parameters count or types are wrong or unknown SNMP protocol version specified.

### Ejemplos

Ejemplo #1 Fetching sysLocation

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

El resultado del ejemplo sería algo similar a:

    STRING: Test server

### Ver también

- SNMP::close() - Cerrar sesión SNMP