2011-06-28 9 views
2

2バイトの4バイトの数字がたくさん入っているbinファイルを読み込もうとしていますが、これを読み込んで16進数に変換してから印刷します画面... ....うまくいけば、私はこの問題の周りに頭を抱えて少し問題があります。私はこれは..私はエラーが$ tbin2hexするオーバー扱う渡しである95%確信している..私はこれまで読ん例とドキュメントから持っているものphp bin2hex関数を使ってbinファイルを読む

<?php 

$handle = @fopen("files/bigbin1.bin", "r"); 
if ($handle) { 
    while (!feof($handle)) { 
     $hex = bin2hex($handle); 
    } 
    fclose($handle); 

} 

print_r($hex); 
?> 

であるが、これは私の初めてのbinファイルの読み込みであること少し失われています。ある時点での全体的な目標はbinファイルをデータベースに読み込むことですが、私はこのファイルが画面上にどのように見えるかを調べようとしています。

+0

ハンドルをbin2hexに直接渡すことはできません。 –

+0

いや、テストの直後に思っていたことなんだけど..言葉でその考えを表現する方法はかなり分かっていた:)まだPHPで遊んでから数年経ったかなり基本的なものだったので、ゆっくりとキャッチしていました。 –

答えて

6
<?php 

$handle = @fopen("files/bigbin1.bin", "r"); 
if ($handle) { 
    while (!feof($handle)) { 
     $hex = bin2hex(fread ($handle , 4)); 
     print $hex."\n"; 
    } 
    fclose($handle); 

} 

?> 

編集:また、@を使用しないでください。デバッグが非常に不快になることがあります。

+0

問題は、数値が4バイトで、fread($ handle、4)でなければならないと述べていますか? –

+0

@Keoki Zee:そうです、申し訳ありませんが、私はそれを2つの4ビット長整数として誤読します。 – GWW

+0

これは完璧に機能しました。申し訳ありませんが、私は以前にこの例題でさらにコンセプトを取り上げていました。 –

関連する問題