Signatur
Beschreibung
snmp_set_oid_numeric_print() ist ein Alias der Funktion snmp_set_oid_output_format() und steuert, in welchem Format OID-Bezeichner (Object Identifiers) von SNMP-Funktionen zurückgegeben werden. OIDs können je nach Einstellung numerisch (.1.3.6.1.2.1.1.1.0) oder in symbolischer Schreibweise (SNMPv2-MIB::sysDescr.0) ausgegeben werden.
Das Format wird global gesetzt und wirkt sich auf alle nachfolgenden SNMP-Aufrufe innerhalb des Skripts aus. Als Argument werden die Konstanten SNMP_OID_OUTPUT_FULL, SNMP_OID_OUTPUT_NUMERIC, SNMP_OID_OUTPUT_MODULE, SNMP_OID_OUTPUT_SUFFIX, SNMP_OID_OUTPUT_UCD oder SNMP_OID_OUTPUT_NONE akzeptiert.
Da es sich um einen Alias handelt, sollte in neuem Code bevorzugt snmp_set_oid_output_format() verwendet werden, da Aliase in zukünftigen PHP-Versionen möglicherweise entfernt werden könnten.
Parameter
| Name | Typ | Default | Beschreibung |
|---|---|---|---|
| $format Pflicht | int | Eine der SNMP-Konstanten für das OID-Ausgabeformat, z. B. SNMP_OID_OUTPUT_NUMERIC für rein numerische OIDs oder SNMP_OID_OUTPUT_FULL für vollständige symbolische Namen. |
Rückgabewert
true zurück.Beispiele
Numerische OID-Ausgabe aktivieren
<?php
// OIDs sollen numerisch ausgegeben werden (z. B. .1.3.6.1.2.1.1.1.0)
snmp_set_oid_numeric_print(SNMP_OID_OUTPUT_NUMERIC);
$result = snmpget('192.168.1.1', 'public', 'SNMPv2-MIB::sysDescr.0');
var_dump($result);
// Ausgabe enthält nun die numerische OID statt des symbolischen Namens
Vollständige symbolische OID-Ausgabe
<?php
// Wechsel auf vollständige symbolische Darstellung
snmp_set_oid_numeric_print(SNMP_OID_OUTPUT_FULL);
$result = snmpwalk('192.168.1.1', 'public', 'system');
foreach ($result as $oid => $value) {
echo $oid . ' => ' . $value . PHP_EOL;
}
// Gibt OIDs im Format SNMPv2-MIB::sysDescr.0 aus
// Wichtig · Fallstricke
Alias: Diese Funktion ist ein direkter Alias von snmp_set_oid_output_format(). Es empfiehlt sich, in neuem Code ausschließlich snmp_set_oid_output_format() zu verwenden, um zukunftssicher zu bleiben.
Die SNMP-Erweiterung muss beim Kompilieren von PHP aktiviert worden sein (benötigt die Net-SNMP-Bibliothek). Ohne diese Erweiterung sind weder der Alias noch die Originalfunktion verfügbar.