PHP Conference Nagoya 2025

SNMP::get

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

SNMP::getПолучает объект SNMP

Описание

public SNMP::get(array|string $objectId, bool $preserveKeys = false): mixed

Получает объект SNMP, указанный в objectId, с помощью запроса GET.

Список параметров

Если objectId является строкой, то SNMP::get() вернёт объект SNMP в виде строки. Если objectId является массивом, все запрошенные объекты SNMP будут возвращены как ассоциативный массив идентификаторов объектов SNMP и их значений.

objectId

Объект SNMP (OID) или объекты

preserveKeys

Когда objectId является массивом и для параметра preserveKeys установлено значение true ключи в результатах будут взяты точно так же, как в objectId, в противном случае свойство SNMP::oid_output_format используется для определения формы ключей.

Возвращаемые значения

Возвращает запрошенные объекты SNMP в виде строки или массива в зависимости от типа objectId или false в случае возникновения ошибки.

Ошибки

По умолчанию метод не выбрасывает исключений. Выдачу исключений SNMPException при библиотечных ошибках включают путём установки свойству класса SNMP exceptions_enabled значения, которое определит конкретные ошибки, которые вызовут исключение. Подробнее смотрите объяснении свойства SNMP::$exceptions_enabled.

Примеры

Пример #1 Одиночный объект SNMP

Одиночный объект SNMP может быть запрошен двумя способами: как строковое возвращаемое строковое значение или как одноэлементный массив с ассоциативным массивом в качестве вывода.

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

Вывод приведённого примера будет похож на:

STRING: Test server
Array
(
    [SNMPv2-MIB::sysDescr.0] => STRING: Test server
)

Пример #2 Множественные объекты SNMP

$session = new SNMP(SNMP::VERSION_1, "127.0.0.1", "public");
$results = $session->get(array("sysDescr.0", "sysName.0"));
print_r($results);
$session->close();

Вывод приведённого примера будет похож на:

Array
(
    [SNMPv2-MIB::sysDescr.0] => STRING: Test server
    [SNMPv2-MIB::sysName.0] => STRING: myhost.nodomain
)

Смотрите также

  • SNMP::getErrno() - Получает код последней ошибки
  • SNMP::getError() - Получает последнее сообщение об ошибке
Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top