Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/229.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.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 snmpget中的Get错误_Php_Snmp - Fatal编程技术网

php snmpget中的Get错误

php snmpget中的Get错误,php,snmp,Php,Snmp,我需要在我的项目中获得系统启动时间。我从php.net得到了一个解决方案。但是当我使用这段代码时,我得到了一个错误“警告:snmpget():无效的对象标识符:system.sysUpTime.0” 我的代码是 $sysuptime[0] = snmpget('192.168.10.24', 'public', "system.sysUpTime.0"); $sysuptime[1] = eregi_replace("Timeticks:","",$sysuptime[0]); echo 'Sy

我需要在我的项目中获得系统启动时间。我从php.net得到了一个解决方案。但是当我使用这段代码时,我得到了一个错误“警告:snmpget():无效的对象标识符:system.sysUpTime.0”

我的代码是

$sysuptime[0] = snmpget('192.168.10.24', 'public', "system.sysUpTime.0");
$sysuptime[1] = eregi_replace("Timeticks:","",$sysuptime[0]);
echo 'System Uptime: Timeticks -'.$sysuptime[1].'<br>';
$sysuptime[0]=snmpget('192.168.10.24','public','system.sysuptime.0');
$sysuptime[1]=eregi_replace(“Timeticks:,”,$sysuptime[0]);
回显“系统正常运行时间:时间刻度-”.$sysuptime[1]。
请帮帮我。

我收到了相同的错误。 我意识到问题可能在很多地方,所以我做的第一件事是我想,可能函数无法识别它传递的参数,或者它无法解决它。所以我向它传递了一个普通的snmp OID,它只是给了我这个答案: 警告:snmpget():127.0.0.1没有响应 这只是因为我的电脑没有任何snmp代理软件来处理sysContact OID请求: $syscontact=snmpget(“127.0.0.1”、“公共”、“1.3.6.1.2.1.1.5”)


我发布这篇文章是为了给你指出一个发现问题的方向。您必须确定php无法处理system.sysUpTime.0的原因,这可能与php无法读取其默认MIB文件有关。

eregi\u replace
自php 5.3.0起,此函数已被弃用。非常不鼓励依赖此功能。使用
preg_replace
@dude,可能有版本问题,“PHP5.3.0、5.3.1和5.3.2没有SNMP支持。SNMP支持已在PHP5.3.3中恢复。”@SAM我的PHP版本是5.4.9。谢谢。@ZawMyoHtet,嘿,至少添加一个更新投票。我目前正在设置和测试我的PHP5.3.3安装。太好了。玩过之后。我发现:要使用snmp MIB,必须正确设置PHP的Windows环境变量。这就是php能够理解作为参数传递的“点”符号的方式。(如果您正在运行WINDOWS,请说)。