Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php-snmp-MIB和walk_Php_Snmp_Mib - Fatal编程技术网

php-snmp-MIB和walk

php-snmp-MIB和walk,php,snmp,mib,Php,Snmp,Mib,我正在编写一个php脚本,它允许我使用snmp在设备上获取和设置某些值。我有设备的MIB,可以轻松地将其加载到php中。问题是,我无法使用“人类可读”的oid字符串而不是数字字符串(数字oid工作正常)来获取我要查找的值 我的代码: $host = "localhost"; $community = "public"; $mibFile = "C:\wamp\www\extra\AvenueMIBv105.mib"; $oid = '.1.3.6.1.4.1.19021.1.1.0.0.1';

我正在编写一个php脚本,它允许我使用snmp在设备上获取和设置某些值。我有设备的MIB,可以轻松地将其加载到php中。问题是,我无法使用“人类可读”的oid字符串而不是数字字符串(数字oid工作正常)来获取我要查找的值

我的代码:

$host = "localhost";
$community = "public";
$mibFile = "C:\wamp\www\extra\AvenueMIBv105.mib";
$oid = '.1.3.6.1.4.1.19021.1.1.0.0.1';
snmp_read_mib($mibFile);

print_r(snmprealwalk($host, $community, $oid));
使用
$oid='.1.3.6.1.4.1.19021.1.1.0.0.1'
,我得到以下输出:

数组([AvenueMIBv105::private.1.19021.1.1.0.1.1.0]=>整数:1[AvenueMIBv105::private.1.19021.1.0.0.1.2.0]=>整数:1

使用$oid='AvenueMIBv105::private.slotSelect'我得到以下输出:

数组([AvenueMIBv105::internet.2.1.1.3.0]=>整数:129663870 [AvenueMIBv105::internet.2.1.1.4.0]=>十六进制字符串:75 73 65 72 4E 61 6D6500

我希望两个输出是相同的。我意识到我必须有“人类可读”的oid错误,但我尝试加载不同的字符串,我总是得到相同的错误输出。我应该如何做到这一点?我也知道有时会有所不同,php脚本正在WAMP服务器上运行

这是我的MIB树:


您的PHP库需要能够将OID“解析”为人类可读的OID名称。您需要研究PHP SNMP库是否以及如何为其输出执行此操作。这是PHP SNMP库的一个问题。如果您的库不执行此操作,则需要手动执行此操作。IReasoning浏览器执行此操作的原因如下:原因Ireasoning将OID解析为人类可读的名称。

您的PHP库需要能够将OID“解析”为人类可读的OID名称。您需要研究PHP SNMP库是否以及如何为其输出执行此操作。这是PHP SNMP库的问题。如果您的库不执行此操作,则需要手动你的IReasoning浏览器之所以这么做,是因为IReasoning将OID解析为人类可读的名称