Set the value of an SNMP object

# snmp2_set

(PHP >= 5.2.0)

snmp2_set — Set the value of an SNMP object

### Descrierea

snmp2_set ( string `$host` , string `$community` , string `$object_id` , string `$type` , string `$value` [, int `$timeout` = 1000000 [, int `$retries` = 5 ]] ) : bool

snmp2_set() is used to set the value of an SNMP object specified by the `object_id`.

### Parametri

`host`

  The hostname of the SNMP agent (server).

`community`

  The write community.

`object_id`

  The SNMP object id.

`type`

  Regulile MIB definesc tipul fiecărui identificator al obiectului. El trebuie specificat printr-un singur caracter din lista ce urmează.

  types
  = | Tipul este extras din MIB
  i | INTEGER
  u | INTEGER
  s | STRING
  x | HEX STRING
  d | DECIMAL STRING
  n | NULLOBJ
  o | OBJID
  t | TIMETICKS
  a | IPADDRESS
  b | BITS

  Dacă a fost definit `OPAQUE_SPECIAL_TYPES` la compilarea bibliotecii SNMP, următoarele de asemenea sunt valide:

  types
  U | int64 fără semn
  I | int64 cu semn
  F | float
  D | double

  Majoritatea acestora vor utiliza tipul cel mai evident în corespondență cu ASN.1. 's', 'x', 'd' și 'b' sunt toate diferite modalități de a specifica o valoare OCTET STRING, iar tipul 'u' fără semn este utilizat și pentru a menține valori Gauge32.

  Dacă fișierele MIB sunt încărcate în arborele MIB cu "snmp_read_mib" sau specificându-le în configurația libsnmp, '=' poate fi utilizat în calitate de parametru `type` pentru toate identificatoarele obiectelor, deoarece tipul poate fi apoi citit automat din MIB.

  Atrageți atenția că există două modalități de a stabili o variabilă de tip BITS ca de exemplu "SYNTAX BITS {telnet(0), ftp(1), http(2), icmp(3), snmp(4), ssh(5), https(6)}":

  - Utilizând tipul "b" și o listă de numere-biți. Această metodă nu este recomandată deoarece o interpelare GET pentru același OID va întoarce de ex. 0xF8.
  - Utilizând tipul "x" și un număr hexadecimal, dar fără(!) prefixul obișnuit "0x".

  Vedeți secțiunea cu exemple pentru mai multe detalii.

`value`

  The new value.

`timeout`

  The number of microseconds until the first timeout.

`retries`

  The number of times to retry if timeouts occur.

### Valorile întoarse

Întoarce valoarea `TRUE` în cazul succesului sau `FALSE` în cazul eșecului.

If the SNMP host rejects the data type, an E_WARNING message like "Warning: Error in packet. Reason: (badValue) The value given has the wrong type or length." is shown. If an unknown or invalid OID is specified the warning probably reads "Could not add variable".

### Exemple

Example #1 Using snmp2_set()

`<?php
snmp2_set("localhost", "public", "IF-MIB::ifAlias.3", "s", "foo");
?>`

Example #2 Using snmp2_set() for setting BITS SNMP object id

`<?php
snmp2_set("localhost", "public", 'FOO-MIB::bar.42', 'b', '0 1 2 3 4');
// or
snmp2_set("localhost", "public", 'FOO-MIB::bar.42', 'x', 'F0');
?>`

### A se vedea și

- snmp2_get() - Fetch an SNMP object