Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: работа со структурами данных
Форумы портала PHP.SU » » Хранение данных, их вывод и обработка » работа со структурами данных

Страниц (1): [1]
 

1. integer - 21 Августа, 2012 - 17:08:31 - перейти к сообщению
как работать в php со структурами данных ?

в моем случае нужно работать со структурами portable executable файлов
пример http://wasm[dot]ru/article.php?article=1002003

IMAGE_FILE_HEADER STRUCT
Machine WORD ?
NumberOfSections WORD ?
TimeDateStamp dd ?
PointerToSymbolTable dd ?
NumberOfSymbols dd ?
SizeOfOptionalHeader WORD ?
Characteristics WORD ?
IMAGE_FILE_HEADER ENDS

или может есть готовая либа на php для работы с pe файлами ?
2. caballero - 21 Августа, 2012 - 17:21:17 - перейти к сообщению
Цитата:
ак работать в php со структурами данных

так же как и в других языках
(Добавление)
Цитата:
или может есть готовая либа на php для работы с pe файлами

кому такое в голову придет делать?
unpack() в руки и будет тебе счастьбе
3. integer - 21 Августа, 2012 - 17:29:36 - перейти к сообщению
у unpack скудное и не понятное описание. как извлекать из последовательности байты, ворды, дворды в виде int ? можно примеры ?
4. Stierus - 21 Августа, 2012 - 17:41:27 - перейти к сообщению
нет в php вордов и двордов ... а еще он не строго типизированный

как-то так Улыбка
5. caballero - 21 Августа, 2012 - 18:09:16 - перейти к сообщению
Цитата:
у unpack скудное и не понятное описание.

все там понятно, тем более что другого способа все равно нет - разве что руками байты складывать

только методом тыка надо понять какой порядок байтов

$array = unpack("nint", $binarydata);
получишь в массиве число с первых 2 байт - по сути WORD

у меня был проект где данные в блоб записывались сишными структурами с виндовой проги. Причем надо было еще и запаковать данные обратно чтобы прога понимала. Но там был хоть какой то смысл. А что ты собираешся с выполняемыми файлами на PHP делать?
6. integer - 21 Августа, 2012 - 18:21:51 - перейти к сообщению
мне нужно извлекать несколько полей из структур pe и отображать их.
вот подобный инструмент, но там файл разбирается полностью, мне нужно намного скромнее.
http://pedump[dot]me/880541c6303296d[dot][dot][dot]b891ddd71c82c41/

буду разбираться с unpack

 

Powered by ExBB FM 1.0 RC1