PHP Conference Nagoya 2025

SNMP::get

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

SNMP::getRécupère un objet SNMP

Description

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

Récupère un objet SNMP spécifié par l'identifiant objectId en utilisant une requête GET.

Liste de paramètres

Si objectId est une chaîne de caractères, alors SNMP::get() retournera un objet SNMP sous la forme d'une chaîne de caractères. Si objectId est un tableau, toutes les objets SNMP demandés seront retournés sous la forme d'un tableau associatif d'identifiants d'objets SNMP ainsi que de leurs valeurs.

objectId

Le ou les objets SNMP (OID)

preserve_keys

Lorsque objectId est un tableau, et que la paramètre preserve_keys est défini à true, les clés dans le résultat seront reprises exactement de l'objet objectId, sinon, la propriété SNMP::oid_output_format sera utilisée pour déterminer le format des clés.

Valeurs de retour

Retourne les objets SNMP demandés, sous la forme de chaînes ou de tableaux, suivant le type du paramètre objectId, ou false si une erreur survient.

Erreurs / Exceptions

Cette méthode ne lance aucune exception par défaut. Pour activer l'émission d'exceptions SNMPException lorsque des erreurs de la bibliothèque surviennent, le paramètre de la classe SNMP exceptions_enabled doit être défini à la valeur correspondante. Voir les explications sur SNMP::$exceptions_enabled pour plus de détails.

Exemples

Exemple #1 Un seul objet SNMP

Un seul objet SNMP peut être demandé de 2 façons : sous la forme d'une chaîne de caractères, retournant ainsi une valeur sous forme de chaîne de caractères également, ou un tableau contenant un seul éléments, retournant ainsi un tableau associatif.

<?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);
?>

Résultat de l'exemple ci-dessus est similaire à :

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

Exemple #2 Plusieurs objets 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();

Résultat de l'exemple ci-dessus est similaire à :

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

Voir aussi

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top