PHP побайтное чтение файла с выводом содержимого
Primary tabs
вот такой пример:
<?php
$file_handle = fopen("rf.bmp", "rb"); // получаем дескриптор файла
// b в "rb" указывает ,что мы собрались читать бинарный файл
$i = 0;
while ($data = fread($file_handle, 1)) // читаем по одному байту
{
$i++;
//var_dump($data);
//$str = $data & 1;
$str = bin2hex($data); // переводим в 16-ти ричное представление
$str = hex2bin($str); // назд в биты
$str = bin2hex($str); // и снова переводим в 16-ти ричное представление
echo "<br>$i) " . $str;// выводим значение каждого байта
}
/* В PHP 5.4 уже есть родная (встроенная)
функция hex2bin - реализация же ниже
приведена для более старых версий*/
function hex2bin($data) {
$len = strlen($data);
$newdata = '';
for($i=0;$i<$len;$i+=2) {
$newdata .= pack("C",hexdec(substr($data,$i,2))); // упаковываем в последовательность бит
}
return $newdata;
}
- Log in to post comments
- 7390 reads