簡體   English   中英

PHP-將二進制文件打印到數組中

[英]PHP- print binary into array

我已打印出此二進制文件,但尚未存儲在數組中。

 <?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

它更可能有一萬行。

我想將它們讀入數組,如下所示:

[0] = '0';
[1] = '1';
[2] = '0';
[3] = '1';
[4] = '0';
[5] = '0';
[6] = '1';
[7] = '0';

[0] = '0';
[1] = '1';
[2] = '0';
[3] = '0';
[4] = '1';
[5] = '0';
[6] = '0';
[7] = '1';

有關如何執行此操作的任何線索?

$array = [];
for($i = 0; $i < strlen($contents); $i++) {
   $char = $contents[$i];

   $str = ord ($char);
   echo "<pre>";
   $array[] = str_split('',str_pad(decbin($str), 8,"0",STR_PAD_LEFT));
}
var_dump($array);

這應該工作

您可以使用str_split

for($i = 0; $i < strlen($contents); $i++) {
    $char = $contents[$i];

    $str = ord ($char);
    $binArray = str_split(str_pad(decbin($str), 8,"0",STR_PAD_LEFT));
    print_r($binArray);    
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM