URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID8
Нить номер: 5920
[ Назад ]

Исходное сообщение
"вывод данных полученных командой snmpwalk"

Отправлено mia , 08-Авг-08 18:48 
не могу решить следующий вопрос:
код  пхп
$a = snmpwalkoid("10.40.2.235", "public", ".1.3.6.1.2.1.17.4.3.1.1");
for (reset($a); $i = key($a); next($a)) {
echo "$i:$a[$i]<br />\n";}

выводить не в hex, а в ascii:


ifIndex  mac

1    ��Vй
5001    )Ђ^Г
5002    ГЦиP
5179    щHЦг
5180    a/аш
5181    ІО|њ
5182    /DFd
5183    2�Щs
5184    2Х(И
10001    >,2
10002    >^Ђn
10003    >sЯ
10004    >}ьх
10005    v�mь
10006    v a+
10007    vЁ>
10008    vЁP


почему?
Подскажите кто знает? Очень надо.спс


Содержание

Сообщения в этом обсуждении
"вывод данных полученных командой snmpwalk"
Отправлено angra , 09-Авг-08 16:54 
>for (reset($a); $i = key($a); next($a)) {

Ужас, где вы такую конструкцию выкопали. Вроде еще в третей версии был foreach
>echo "$i:$a[$i]<br />\n";}
>выводить не в hex, а в ascii:

Он выводит не в ascii, а в бинарном виде, как получил :) А вам надо чтобы он преобразовывал бинарные данные в шестнадцатеричное ascii представление. Откройте мануал на разделе "string functions" и поищите нужную вам функцию. Я бы посоветовал bin2hex для данного случая и pack как универсальный инструмент на будущее.