©
This document uses PHP Chinese website manual Release
(PHP 5 >= 5.2.0)
snmp_set_oid_output_format — Set the OID output format
$oid_format
= SNMP_OID_OUTPUT_MODULE
)snmp_set_oid_output_format() sets the output format to be full or numeric.
oid_format
SNMP_OID_OUTPUT_FULL | .iso.org.dod.internet.mgmt.mib-2.system.sysUpTime.sysUpTimeInstance |
SNMP_OID_OUTPUT_NUMERIC | .1.3.6.1.2.1.1.3.0 |
Begining from PHP 5.4.0 four additional constants available:
SNMP_OID_OUTPUT_MODULE | DISMAN-EVENT-MIB::sysUpTimeInstance |
SNMP_OID_OUTPUT_SUFFIX | sysUpTimeInstance |
SNMP_OID_OUTPUT_UCD | system.sysUpTime.sysUpTimeInstance |
SNMP_OID_OUTPUT_NONE | Undefined |
没有返回值。
Note:
snmp_set_oid_output_format() is only available when using the UCD SNMP library. This function is not available when using the Windows SNMP library.
Example #1 Using snmprealwalk()
<?php
snmp_read_mib ( "/usr/share/mibs/netsnmp/NET-SNMP-TC" );
// default or SNMP_OID_OUTPUT_MODULE in PHP >= 5.3.6
print_r ( snmprealwalk ( 'localhost' , 'public' , 'RFC1213-MIB::sysObjectID' ) );
snmp_set_oid_output_format ( SNMP_OID_OUTPUT_NUMERIC );
print_r ( snmprealwalk ( 'localhost' , 'public' , 'RFC1213-MIB::sysObjectID' ) );
snmp_set_oid_output_format ( SNMP_OID_OUTPUT_FULL );
print_r ( snmprealwalk ( 'localhost' , 'public' , 'RFC1213-MIB::sysObjectID' ) );
?>
The above would output:
Array ( [RFC1213-MIB::sysObjectID.0] => OID: NET-SNMP-TC::linux ) Array ( [.1.3.6.1.2.1.1.2.0] => OID: .1.3.6.1.4.1.8072.3.2.10 ) Array ( [.iso.org.dod.internet.mgmt.mib-2.system.sysObjectID.0] => OID: .iso.org.dod.internet.private.enterprises.netSnmp.netSnmpEnumerations.netSnmpAgentOIDs.linux )
[#1] ww at 9rivers dot com [2010-12-30 08:43:39]
There seems to be more than SNMP_OID_OUTPUT_FULL and SNMP_OID_OUTPUT_NUMERIC.
For example, when I walk on BRIDGE-MIB::dot1dTpFdbPort without setting the output format and var_dump the result, I get output like:
["BRIDGE-MIB::dot1dTpFdbPort.'..F8.7'"]=>
string(2) "52"
When I set it to NUMERIC, I get what I expected:
[".1.3.6.1.2.1.17.4.3.1.2.244.206.70.56.24.55"]=>
string(2) "52"
When I set it to FULL, I get even more (line-wrapped manually):
[".iso.org.dod.internet.mgmt.mib-2 .dot1dBridge.dot1dTp .dot1dTpFdbTable .dot1dTpFdbEntry .dot1dTpFdbPort. '..F8.7'"]=>
string(2) "52"