(PHP 5 >= 5.4.0, PHP 7, PHP 8)
SNMP::get — Recupera un objeto SNMP
Recupera un objeto SNMP especificado por el identificador
objectId
utilizando una solicitud GET.
Si objectId
es una string, entonces SNMP::get()
devolverá un objeto SNMP en forma de string. Si
objectId
es un array, todos los objetos SNMP solicitados
serán devueltos en forma de array asociativo de identificadores de objetos
SNMP y sus valores.
objectId
El o los objetos SNMP (OID)
preserve_keys
Cuando objectId
es un array, y el parámetro
preserve_keys
está definido a true
, las claves en el resultado
serán tomadas exactamente del objeto objectId
, de lo contrario,
la propiedad SNMP::oid_output_format será utilizada para determinar
el formato de las claves.
Devuelve los objetos SNMP solicitados, en forma
de strings o arrays, según el tipo del parámetro
objectId
, o false
si ocurre un error.
Este método no lanza ninguna excepción de manera predeterminada.
Para poder lanzar una excepción SNMPException cuando ocurre alguno de los errores de la biblioteca
el parámetro exceptions_enabled
de la clase SNMP
se debería establecer al valor correspondiente. Véase
la explicación de SNMP::$exceptions_enabled
para más detalles.
Ejemplo #1 Un solo objeto SNMP
Un solo objeto SNMP puede ser solicitado de 2 maneras: en forma de string, devolviendo así un valor en forma de string también, o un array conteniendo un solo elemento, devolviendo así un array asociativo.
<?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);
?>
El resultado del ejemplo sería algo similar a:
STRING: Test server Array ( [SNMPv2-MIB::sysDescr.0] => STRING: Test server )
Ejemplo #2 Varios objetos 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();
El resultado del ejemplo sería algo similar a:
Array ( [SNMPv2-MIB::sysDescr.0] => STRING: Test server [SNMPv2-MIB::sysName.0] => STRING: myhost.nodomain )