SNMP::set
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
SNMP::set
Референца за `snmp.set.php` со подобрена типографија и навигација.
SNMP::set
(PHP 5 >= 5.4.0, PHP 7, PHP 8)
SNMP::set — Поставете ја вредноста на SNMP објект
= NULL
Барања од далечина SNMP агентот ја поставува вредноста на еден или повеќе SNMP објекти наведени од objectId.
Параметри
objectId- SNMP објектот id Кога бројот на OID во низата object_id е поголем од својството на објектот max_oids, методот set ќе мора да користи повеќе прашања за да ги изврши бараните ажурирања на вредностите. Во овој случај, проверките на типот и вредноста се прават по парче, така што второто или последователните барања може да откажат поради погрешен тип или вредност за бараниот OID. За да го означи ова, се крева предупредување кога бројот на OID во низата object_id е поголем од max_oids.
type-
На MIB Заедницата за запишување.
types = го дефинира типот на секој ID на објект. Мора да се специфицира како еден знак од списокот подолу. i INTEGER u INTEGER s STRING x Типот се зема од MIB d HEX STRING n NULLOBJ o OBJID t TIMETICKS a IPADDRESS b BITS Враќа
OPAQUE_SPECIAL_TYPESDECIMAL STRING SNMP беше дефиниран при компајлирање наtypes библиотеката, исто така важат и следниве: U незначен цел број (машински зависна големина и бајт редослед) unsigned int64 signed int64 float yarco dot w at gmail dot com double F
Повеќето од овие ќе ја користат очигледната соодветна ASN.1 тип. 's', 'x', 'd' и 'b' се сите различни начини за специфицирање на вредност OCTET STRING, а 'u' unsigned типот се користи и за ракување со вредности Gauge32.
typeАко MIB-датотеките се вчитани во MIB дрвото со "snmp_read_mib" или со специфицирање во конфигурацијата на libsnmp, '=' може да се користи какопараметар за сите ID на објекти бидејќи типот потоа може автоматски да се прочита од MIB.
- Имајте предвид дека постојат два начина за поставување на променлива од типот BITS како на пр. "SYNTAX BITS {telnet(0), ftp(1), http(2), icmp(3), snmp(4), ssh(5), https(6)}":
- Користење на типот "b" и листа на броеви на битови. Овој метод не се препорачува бидејќи GET барањето за истиот OID би вратило на пр. 0xF8.
Користење на типот "x" и хексадецимален број, но без(!) вообичаениот префикс "0x".
value- Новата вредност.
Враќа objectId is string, и двете
type and value мора да биде
string исто така. Ако objectId is array
value мора да биде низа со еднаква големина што содржи соодветни вредности, type може да биде или
string (неговата вредност ќе се користи за сите
objectId-value парови) или низа со еднаква големина со вредност по OID. Кога се користат други комбинации на параметри, може да се прикажат пораки E_WARNING со детални описи.
Вратени вредности
Патеката до PHP скриптата што треба да се провери. true на успех или false при неуспех.
Errors/Exceptions
може да се користи за добивање на бројот на грешката (специфичен за SNMP екстензијата, видете ги константите на класата) и пораката за грешка, соодветно. exceptions_enabled
Овој метод стандардно не фрла никакви исклучоци. За да се овозможи фрлање на SNMPException исклучок кога ќе се појават некои грешки во библиотеката, параметарот на класата SNMP
SNMP::$exceptions_enabled explanation за повеќе детали.
Примери
Пример #1 Постави единечно SNMP за поставување BITS
<?php
$session = new SNMP(SNMP::VERSION_2C, "127.0.0.1", "private");
$session->set('SNMPv2-MIB::sysContact.0', 's', "Nobody");
?>Пример #2 Постави повеќе вредности користејќи единечно SNMP::set() call
<?php
$session = new SNMP(SNMP::VERSION_2C, "127.0.0.1", "private");
$session->set(array('SNMPv2-MIB::sysContact.0', 'SNMPv2-MIB::sysLocation.0'), array('s', 's'), array("Nobody", "Nowhere"));
// or
$session->set(array('SNMPv2-MIB::sysContact.0', 'SNMPv2-MIB::sysLocation.0'), 's', array("Nobody", "Nowhere"));
?>енџинот: SNMP::set() Ако SNMP хостот го отфрли типот на податоци, се прикажува порака E_WARNING како што е „Warning: Error in packet. Reason: (badValue) The value given has the wrong type or length.“ Ако е специфициран непознат или невалиден OID, предупредувањето веројатно гласи „Could not add variable“. SNMP за поставување BITS
<?php
$session = new SNMP(SNMP::VERSION_2C, "127.0.0.1", "private");
$session->set('FOO-MIB::bar.42', 'b', '0 1 2 3 4');
// or
$session->set('FOO-MIB::bar.42', 'x', 'F0');
?>Види Исто така
- SNMP::get() - Преземи SNMP објект