snmprealwalk () возвращает пустой массив

0

Я сделал простой snmprealwalk для машины и вернул ему имя производителя, все это хорошо и игры на окнах, но когда дело доходит до linux (lamp-server ^ installed), здесь это просто возвращает и пуст массив:

<?php

// error return
//error_reporting(0);ini_set('display_errors', 0);

$snmp = snmprealwalk("10.4.243.62","public", "iso.3.6.1.4.1.253.8.53.13.2.1.6.1.20.34");

foreach ($snmp as $key => $value) {
    echo $key . " " . $value . "<br/>";
}

?>

Я попытался var_dump массив $ snmp на сервере linux, и я получаю пустой массив

array(0) { } 

Мои вопросы, почему это происходит, как я могу это исправить?

  • 0
    Если вы не укажете идентификатор объекта, вы должны вернуть все объекты обратно, и тогда вы сможете подтвердить, существует ли он или нет. Тем не менее, мне не хватает опыта SNMP, чтобы помочь вам в дальнейшем.
  • 0
    То, что вы говорите, правда, "" возвращает все oids и соответствующие значения действительно, но это отстой, что я не могу вернуть определенный oid с этой функцией :( он работает безупречно на вздохе окон, я устал тратить часы Linux работает для какой-либо цели ...
Показать ещё 3 комментария
Теги:
arrays

1 ответ

1

После нескольких часов мозгового кровообращения я наконец нашел виновника: PHP 5.3

При выборе стека лампы НЕ ИСПОЛЬЗУЙТЕ пакет lamp-server ^ ! (apt-get install lamp-server ^). Это, по-видимому, установит устаревшую версию php, которая требует php5-snmp.

Используйте это вместо этого:

sudo apt-get update

sudo apt-get install apache2 mysql-server php5 php5-mysql

теперь snmprealwalk ($ ip, $ community, $ oid); возвращает массив, даже когда вводится конкретная информация!

  • 1
    Я рад, что вы поняли это и спасибо за обновление вашего поста!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню