バイナリファイルにバイトを書き込もうとしています。PHP - バイナリファイルにバイトを作成して書き込む方法
私はバイナリバイト(8ビット)を文字列として持っています。 "01100101"
これをPHPで1バイトとして書くにはどうすればよいですか? fopen
を"wb"
とすると、それはまだASCIIで書き込まれ、01100101
がファイルに格納されます。私はプロセス全体がどのように働くのか混乱するかもしれません。
バイナリファイルにバイトを書き込もうとしています。PHP - バイナリファイルにバイトを作成して書き込む方法
私はバイナリバイト(8ビット)を文字列として持っています。 "01100101"
これをPHPで1バイトとして書くにはどうすればよいですか? fopen
を"wb"
とすると、それはまだASCIIで書き込まれ、01100101
がファイルに格納されます。私はプロセス全体がどのように働くのか混乱するかもしれません。
私はpack()
があなたが探しているものです。
function bin2bstr($input)
// Convert a binary expression (e.g., "100111") into a binary-string
{
if (!is_string($input)) return null; // Sanity check
// Pack into a string
return pack('H*', base_convert($input, 2, 16));
}
$number = bindec("01100101");
$number = 0b01100101; // better
表記0Bは...進数のためのものです。
file_put_contents('aa',pack('ifA5',1001,25.5,'asdfg'));
var_dump(unpack('iint/ffloat/A5lkl',file_get_contents('aa')));
私はこれを後で見つけるのに役立ちます。 :-) – TecBrat