dautkom/php.netsnmp

SNMP 封装库

1.0.1 2017-09-05 13:46 UTC

This package is auto-updated.

Last update: 2024-09-13 10:23:28 UTC


README

PHP 类封装 \SNMP 方法

要求

  • PHP 7.0 或更高版本
  • php_snmp 扩展

许可

版权 (c) 2016 Olegs Capligins 和相应贡献者,在 MIT 许可证下。

用法

以下示例涵盖了一般用法。如果你使用 composer 自动加载,请考虑不同的包含和类映射机制。

基本用法

<?php
require('../NetSNMP.php');

// Second argument with snmp configuration is optional
$snmp = (new \dautkom\snmp\NetSNMP())->init('172.16.130.151', ['public', 'private']);

// Retrieve system.sysDescr
$data = $snmp->get('.1.3.6.1.2.1.1.1.0');

// Set system.sysContact data
$set = $snmp->set('.1.3.6.1.2.1.1.4.0', 's', 'support@dautkom.lv');

// Retrieve an array from interfaces.ifTable.ifEntry.ifDescr
$arr = $snmp->walk('.1.3.6.1.2.1.2.2.1.2');

高级用法

<?php
require('../NetSNMP.php');
$snmp = (new \dautkom\snmp\NetSNMP())->init('172.16.130.151');

// It's possible to pass arrays of OIDs to get() and set() methods
$arr = $snmp->get(['.1.3.6.1.2.1.1.4.0', '.1.3.6.1.2.1.1.1.0']);

// Useful when two OIDs have to be set simultaneously, e.g. while creating VLAN
$set = $snmp->set(['.1.3.6.1.2.1.17.7.1.4.3.1.1.20', '.1.3.6.1.2.1.17.7.1.4.3.1.5.20'], ['s', 'i'], ['VlanName', 4]);