php - работаем с bmp файлом - открываем - читаем и записываем данные
Primary tabs
Общие замечания о работе с такими файлами смотрите здесь.
Записывать будем тоже самое, что и прочитаем, но уже в другой файл:
<?php
include 'lib.php';
// ниже код для записи в файл картинки "того же самого"
$file_handle = fopen("rf55.bmp", "r"); // получаем дескриптор файла (для чтения и записи)
echo "<br>-----------<br>";
$barr = array();// массив байтов файла
while ($data = fread($file_handle, 1)) // читаем по одному байту
{
$barr[] = bin2hex($data);// получим данные в шестинатеричном виде
}
$i = 1;
foreach ($barr as $el) // выведем все байты
{
echo("$i) ". $el.'<br>');
$i++;
}
// склеиваем массив - получаем сторку шестнадцатериных символов
$data = arr_to_str($barr); // (прользовательская функция)
echo $data;
echo "<br>-----------<br>";
//$data = str_replace('1f','ff',$data);
echo $data;
$data = hex2bin($data); // упаковываем в бинарный формат
fclose($file_handle); // закрываем прочитанный файл
$file_handle = fopen("rf2000.bmp", "w"); // открываем новый файл
fwrite($file_handle, $data);// пишем данные в файл
fclose($file_handle); // закрываем записанный файл
ПРИМЕЧАНИЕ: реализацию пользовательских функций (lib.php) для данного примера можно найти здесь = http://fkn.ktu10.com/?q=node/4315
- Log in to post comments
- 5198 reads