jeno
Новичок
pack/unpack (разбор бинарного файла)
честно говоря, так и толком не понял как работает pack/unpack...
да и на форуме эта тема толком не обсуждалась...
что мне надо: надо читать/записывать в бинарный файл какие-то данные...
например, для начала поставил целью считать ID3 теги из MP3 файла (год,альбом,артист и т.д.)... + это даже может пригодится
загорелся после того как наткнулся на эту страничку:
http://omsk777.ru/all.php?act=funct&argument=imagecreate
на ней скрипт, который разбирает bmp, и рисует его средствами GD...
вот например:
вернет:
хотелось бы так же с ID3 тегами в mp3 + понять как это все работает
вот например кусочек:
а именно
file_type,file_size и т.д. это переменные которые запакованы в бинарный код??
для каждого файла они уникальны?
откуда их можно узнать? (подозреваю что вы меня счас пошлете в гугл)
эти данные (тип файла, размер и т.п.) всегда хранятся в первых 14 битах файла?
обьясните пожалуйста! думаю это не одному мне интересно!
честно говоря, так и толком не понял как работает pack/unpack...
да и на форуме эта тема толком не обсуждалась...
что мне надо: надо читать/записывать в бинарный файл какие-то данные...
например, для начала поставил целью считать ID3 теги из MP3 файла (год,альбом,артист и т.д.)... + это даже может пригодится

загорелся после того как наткнулся на эту страничку:
http://omsk777.ru/all.php?act=funct&argument=imagecreate
на ней скрипт, который разбирает bmp, и рисует его средствами GD...
вот например:
PHP:
<?
header("Content-Type: text/plain");
$fp=fopen("1.bmp","r");
print_r(unpack("vfile_type/Vfile_size/Vreserved/Vbitmap_offset",fread($fp,14)));
print_r(unpack('Vheader_size/Vwidth/Vheight/vplanes/vbits_per_pixel'.
'/Vcompression/Vsize_bitmap/Vhoriz_resolution'.
'/Vvert_resolution/Vcolors_used/Vcolors_important',fread($fp,40)));
fclose($fp);
?>
Код:
Array
(
[file_type] => 19778
[file_size] => 1532966
[reserved] => 0
[bitmap_offset] => 54
)
Array
(
[header_size] => 40
[width] => 857
[height] => 596
[planes] => 1
[bits_per_pixel] => 24
[compression] => 0
[size_bitmap] => 1532912
[horiz_resolution] => 0
[vert_resolution] => 0
[colors_used] => 0
[colors_important] => 0
)
хотелось бы так же с ID3 тегами в mp3 + понять как это все работает

вот например кусочек:
PHP:
unpack("vfile_type/Vfile_size/Vreserved/Vbitmap_offset",fread($fp,14));
Код:
"vfile_type/Vfile_size/Vreserved/Vbitmap_offset"
для каждого файла они уникальны?
откуда их можно узнать? (подозреваю что вы меня счас пошлете в гугл)
эти данные (тип файла, размер и т.п.) всегда хранятся в первых 14 битах файла?
обьясните пожалуйста! думаю это не одному мне интересно!