(PHP 4, PHP 5, PHP 7)
snmp3_set — Set the value of an SNMP object
$host
   , string $sec_name
   , string $sec_level
   , string $auth_protocol
   , string $auth_passphrase
   , string $priv_protocol
   , string $priv_passphrase
   , string $object_id
   , string $type
   , string $value
   [, int $timeout = 1000000
   [, int $retries = 5
  ]] )
   snmp3_set() is used to set the value of an SNMP object
   specified by the object_id.
  
Even if the security level does not use an auth or priv protocol/password valid values have to be specified.
hostThe hostname of the SNMP agent (server).
sec_namethe security name, usually some kind of username
sec_levelthe security level (noAuthNoPriv|authNoPriv|authPriv)
auth_protocolthe authentication protocol (MD5 or SHA)
auth_passphrasethe authentication pass phrase
priv_protocolthe privacy protocol (DES or AES)
priv_passphrasethe privacy pass phrase
object_idThe SNMP object id.
typeMIB указывает тип идентификатора каждого объекта. Он должен быть указан в виде одного символа из следующего списка.
| = | Тип, принимаемый MIB | 
| i | INTEGER | 
| u | INTEGER | 
| s | STRING | 
| x | HEX STRING | 
| d | DECIMAL STRING | 
| n | NULLOBJ | 
| o | OBJID | 
| t | TIMETICKS | 
| a | IPADDRESS | 
| b | BITS | 
 Если при компиляции библиотеки SNMP была определена
 опция OPAQUE_SPECIAL_TYPES, то также могут быть использованы
 следующие типы:
| U | unsigned int64 | 
| I | signed int64 | 
| F | float | 
| D | double | 
Большинство этих значений используют очевидный тип ASN.1. 's', 'x', 'd' и 'b' - это все разные способы указания значения OCTET STRING, а беззнаковый тип 'u' также используется для обработки значений Gauge32.
Если MIB-файлы были загружены в MIB-дерево с помощью "snmp_read_mib"
или были указаны в конфигурационном файле libsnmp, то для указания
параметра type можно использовать нотацию
'=', т.к. тип всех идентификаторов объектов будет автоматически
считан из MIB.
Обратите внимание, что есть два способа установить переменную типа BITS, например, "SYNTAX BITS {telnet(0), ftp(1), http(2), icmp(3), snmp(4), ssh(5), https(6)}":
Подробнее смотрите в разделе с примерами.
valueThe new value
timeoutThe number of microseconds until the first timeout.
retriesThe number of times to retry if timeouts occur.
   Возвращает TRUE в случае успешного завершения  или FALSE в случае возникновения ошибки.
  
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".
Пример #1 Using snmp3_set()
<?php
  snmp3_set('localhost', 'james', 'authPriv', 'SHA', 'secret007', 'AES', 'secret007', 'IF-MIB::ifAlias.3', 's', "foo");
?>
Пример #2 Using snmp3_set() for setting BITS SNMP object id
<?php
  snmp3_set('localhost', 'james', 'authPriv', 'SHA', 'secret007', 'AES', 'secret007', 'FOO-MIB::bar.42', 'b', '0 1 2 3 4');
// or
  snmp3_set('localhost', 'james', 'authPriv', 'SHA', 'secret007', 'AES', 'secret007', 'FOO-MIB::bar.42', 'x', 'F0');
?>