Я искал в Google, php manual, github и, конечно, stackoverflow, основал много разных способов, пробовал некоторые, но ни один из них не работал.
Итак, что я хочу спросить, как использовать PHP SNMP в Laravel? сейчас я использую nelisys / SNMP библиотека, но она не работает, возвращаемое значение всегда было array (0) {}, даже после использования примера кода. я установил исходный код, используя composer на моем laravel, и не было никаких ошибок вообще. кажется таким безнадежным, так как любые ссылки, которые я нашел в Google, были настолько устаревшими. вот мой код сейчас:
use Nelisys\Snmp;
$snmp = new Snmp($vd->ip, 'my_community');
if(!is_null($snmp) && $oid){
$snmp_data = $snmp->get($oid);
}
когда я var_dump $ snmp, он напечатал это:
object(Nelisys\Snmp)#2434 (5) {
["hostname":protected]=>
string(10) "xx.xx.xx.xx"["community":protected]=>
string(7) "my_community"["version":protected]=>
string(1) "1"["output_options":protected]=>
string(6) "0efnqt"["snmpget_max_oids":protected]=>
int(10)
}
Кто-нибудь может мне помочь ? большое спасибо вам.
ОБНОВЛЕНИЕ:
Я попытался убедиться, что net-snmp и net-snmp-utils были успешно установлены и настроены, выполнив этот учебник, но все же, не работает, как я ожидал. Что мне теперь делать?
Проблема в том, что nelisys / SNMP пакет четко говорит
Requires: net-snmp-utils
Вам следует использовать производную от Linux, как предложено RedHat, и установить net-snmp-util
, Тогда вы сможете запустить PHP.
Для Windows это может быть, что http://www.net-snmp.org/download.html это то же самое … но я не уверен — лучше использовать Linux.
Других решений пока нет …