前言
最近需要开发AC的snmp协议,需要开启php的snmp扩展,网上能搜索到的主要还是windows和centos下面的几篇资料。这里主要介绍下mac系统下如何搭建php的snmp开发环境。
第一步,安装php:
首先需要在mac上面安装PHP,这个方法有很多,我当时是用brew install php
安装的,安装后的版本是8.1.7
billyshen@Billys-MacBook-Pro-2 snmp % php -v
PHP 8.1.7 (cli) (built: Jun 9 2022 14:21:07) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.7, Copyright (c) Zend Technologies
with Zend OPcache v8.1.7, Copyright (c), by Zend Technologies
通过php -m
命令我们可以查看现有的扩展,这里我们发现并没有snmp模块
第二步,安装SNMP扩展
如果第一步中的php你是源码安装的,那你可以直接去到原来的安装包,执行扩展安装;如果你是像我一样通过brew安装的话,(我反正没找到安装包在哪),就去PHP官网下载一个源码包,这里我发现不一定要下载一模一样的版本包,我下载了php-8.1.13.tar.gz,也能用。
- 解压php-8.1.13.tar.gz
- cd php-8.1.13/ext/snmp
- ./configure --with-snmp
- make
- make install
第三步,打开php.ini配置
通过php --ini
找到php.ini,然后将extension=snmp
前面的;
去掉即可。
再实现php -m
看下效果
billyshen@Billys-MacBook-Pro-2 snmp % php -m | grep snmp
snmp
说明扩展安装成功。
第四步,测试代码
<?php
$test = snmpget("192.168.0.81", "public", "1.3.6.1.2.1.1.5.0");
echo $test."\n";
?>
执行后,输出:
搞定!
参考:
php如何安装snmp扩展
基于php的snmp管理端开发
Net-Snmp_on_Ubuntu
Mac 解决安装brew卡在 “Cloning into ‘/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core‘…”