# SNMP::__construct

(PHP 5 >= 5.4.0, PHP 7)

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

### Description

public SNMP::__construct ( int `$version` , string `$hostname` , string `$community` [, int `$timeout` = 1000000 [, int `$retries` = 5 ]] )

The function description goes here.

### Parameters

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

### Return Values

Returns SNMP object representing remote SNMP agent.

### Errors/Exceptions

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

### Examples

Example #1 Fetching sysLocation

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

The above example will output something similar to:

    STRING: Test server

### See Also

- SNMP::close() - Close SNMP session