2016-06-06 2 views
0

Возможно, у меня мало кофе, возможно, это потому, что это понедельник, но для жизни я не уверен, что я делаю неправильно. Я установил php-snmp.x86_64 5.3.3-47.el6 через yum, обновил php.x86_64 до 5.3.3-47.el6, поскольку yum требуется и перезапустил apache, но я все еще не могу создать новый объект SNMP как так (предположим, что переменные экземпляра заранее):Класс SNMP не найден на CentOS 6

$snmp = new SNMP(SNMP::VERSION_2C, $ip, $community, $snmp_timeout); 

состояния журнала ошибок "PHP Фатальная ошибка: Class 'SNMP' не найден". Люди на разных форумах говорят, что он доступен только в PHP 5.4, но если это так, то почему я смог его установить? На странице установки PHP SNMP указано: «Поддержка SNMP была восстановлена ​​в PHP 5.3.3».

Я надеюсь, что это всего лишь одна из тех глупых ошибок, которые могут быть исправлены с отсутствующим включением, но что мне здесь не хватает?

PHPInfo (от апача, не CLI) отмечает следующее относительно SNMP:

Configure Command: --enable-ucd-snmp-hack 
Additional .ini files parsed: /etc/php.d/snmp.ini 
NET-SNMP Support enabled 
NET-SNMP Version 5.5 

ответ

0

Установка этого модуля позволяет использовать SNMP functions в PHP. Большинство из них были навсегда (например, PHP 4.0 дней) и, конечно же, не требуют SNMP 5.4. Это всего лишь базовые обертки вокруг функций API C и не предоставляют объектно-ориентированного доступа к SNMP.

SNMP class, с другой стороны, - новая функция PHP 5.4, поэтому не будет доступна на такой старой версии.

Я бы рекомендовал использовать репозиторий Remi для обновления до современной версии PHP. Подробнее см. В разделе this answer, хотя URL-адреса могут быть изменены.

Смежные вопросы