Я распечатал этот двоичный файл, который составляет 8 на строку, но еще не сохранен в массиве.
<?php
// get contents of a file into a string
$filename = "rock.wav";
$handle = fopen($filename, "rb");
$contents = fread($handle, filesize($filename));
for($i = 0; $i < strlen($contents); $i++) {
$char = $contents[$i];
$str = ord ($char);
echo str_pad(decbin($str), 8,"0",STR_PAD_LEFT)."<br/>";
}
?>
Результат таков:
01010010
01001001
01000110
01000110
00000010
на самом деле это скорее всего десять тысяч строк.
Я хочу прочитать их в массив, который выглядит так,
arr[0] = 0000011010101101
arr[1] = 0000000010101101
arr[2] = 0000011010101101
arr[3] = 0000000010101101
arr[4] = 0000011010101101
arr[5] = 0000000010101101
arr[6] = 0000000010101101
arr[7] = 0000011010101101
arr[8] = 0000000010101101
arr[9] = 0000011010101101
это означает, что я хочу хранить 2 байта в 1 массиве, чтобы я мог заменить новый бит в последнем бите байта.
Есть ли способы сделать это? Мне нужно использовать цикл?
Задача ещё не решена.
Других решений пока нет …