少し問題があります:)
- 文字列を編集して置換したいバイナリファイル -executable- があります
- PHPでファイルを開き、置換を実行して保存します
- 保存されたバイナリが破損しています。
SED または任意の 16 進エディタを使用して実行すると、問題なく動作します。
PHP を使用してバイナリ ファイルを開き、編集 (文字列を置換) して保存できますか?
どうもありがとうございました!
バイナリ ファイルとテキスト ファイルを区別するシステム (Windows など) では、fopen() モード パラメータに 'b' を含めてファイルを開く必要があります。次に、ファイルに対して fread と fwrite を使用します。
<?php
$fp = fopen('binary_file.bin', 'w+b');
fwrite($fp, '1');
fclose($fp);
?>
ファイルをバイトごとに読み取り、バイナリ比較を行い、バイトからバイトへの置換を行うことができます。Cコードのように見えるPHPコードを書く:D