PHP-将2个字节放入1个数组中

PHP-将2个字节放入1个数组中,php,arrays,wav,steganography,Php,Arrays,Wav,Steganography,我已经打印出这个二进制文件,每行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

我已经打印出这个二进制文件,每行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/>";    


}
?>
它实际上更有可能有一万行

我想把它们读入如下的数组

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个字节,这样我就可以将新的位替换到字节的最后一位


有什么办法吗?我需要使用循环吗?

您需要以二进制格式创建数据,还是只是试图实现“以便我可以将新位替换为字节的最后一位”。@hizz请检查我的答案。到目前为止,您尝试了什么?“1个数组中的2个字节”后面有什么算法,比如将它们串联起来吗?@NigelRen我有类似于上面结果的二进制数据。但它还没有存储到数组中。因此,如何将2个字节存储到1个数组中。忽略替换。在下面的示例中,不清楚如何从打印的值转换为每个数组2字节的元素。但是,如果您想从流中组合2个连续字节,为什么不将第一个字节进行8位移位,例如,
(字节1
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